Api Object和数据类型
*Object 根类 中的常见方法说明:
Object类型是java世界中所有类型的父类
* 所有的类型,直接或者间接继承 Object类型
Object关于对象的比较:
== 比较地址,当你新建一个对象的时候,哪怕对象属性一模一样,输出的结果也是false
eqaulse有两种比较方式:
如果你没在对象类中重写equalse,那么它的比较就和==一样,
当你在对象类中重写了之后,那它比较的就是属性,但它只能比较单一属性
比如:
Dog a=new Dog("旺财","黄色");
Dog b=new Dog("旺财","黑色");
假设我们重写了equalse方法并且以名字为依据,那么
a.equalse(b)的结果会是true,哪怕他颜色不一样,是两只不同的狗,
但是因为他们的名字相同,所以输出的结果就是true
如果将依据改为颜色,那么输出结果则是false
数据类型:
*数据类型有基本数据类型和引用数据类型
基本数据类型:byte short int long float double boolean char
从byte到long是整数,float和double则是小数,boolean是判断真假,char是字符
引用数据类型:最常见的引用数据类型就是String,其他还有Integer,Dog,Cat......
*基本类型和引用类型分辨的依据:
*基本数据类型的首字母都是小写,而引用数据类型的首字母则全是大写
自动拆箱和装箱:
Integer i1 = 123;
Integer i2 = 123;
int i = 123;
Integer i3 = new Integer(123);
Integer i4 = new Integer(123);
i1,i2,i3,i4都进行了包装,这就是自动装箱
当i1和i比较时,i1则会自动拆箱,此时的i1=123,所以和i会相等,
而i1和i2比较时,结果则是flase,因为他们的地址不一样
*当引用数据类型和基本数据类型进行比较时,引用数据类型则会自动拆箱,拆箱后会变成基本数据类型与其比较
*当你给你定义的值的前面写上引用数据类型,那么他则会自动装箱变成该类型,也就是我们所说的包装类