一、今日学习内容:
今天还是主要学习了类与对象的知识点,是昨天部分知识的额外补充:
1、理解赋值“=”的含义:
MyClass obj = new MyClass();
MyClass other = obj;
2、独特的对象引用:this
对象中的所有数据字段都是通过this指针间接引用的。
同一类中的方法可以相互调用,或者直接存取本类定义的字段,可看成其中隐含了一个this调用。
3、作为常量的对象变量:
可以使用final定义一个“常量”对象变量 final MyClass obj = new MyClass();
注意:“常量”对象变量不能指向另一个对象,但可以修改对象,比如设置它所引用对象的某公有字段值。
4、对象判等:
对于原始数据类型的变量(比如int),可以直接使用“==”判断两变量值是否相等.
当“==”施加于原始数据类型变量时,是比较变量所保存的数据是否相等。
当“==”施加于引用类型变量时,是比较这两个变量是否引用同一对象。
引用代表地址,所以“==”实际上相当于比较两个引用类型变量中保存的对象地址是否相同。
5、如何比较两个对象的内容是否一样:
两个对象的“内容”,其实是指它们在某一时刻的所有字段的值,“内容相等”,其实是就“对应字段值”一致。
在Java中要比对两个对象的字段值,可以 “重写(override)”基类的equals()方法。
6、Equals:
当你定义一个类时,如果不显式指明它的“父亲”类是哪个,则默认是Object。 Object是Java的最顶层基类,其中定义了equals( )方法。
Object是Java的最顶层基类,其中定义了equals( )方法。
7、多构造函数:
同一个类可以有多个构造函数,多个构造函数之间通过参数来区分。这是方法重载的一个实例。
构造函数之间可以相互调用。
二、遇到的问题:
没有什么问题。
三、明日计划:
继续学习最后一部分知识。