课堂实践

1.     使用自定义类:

验证结果:

                       

2.     进行试验1

验证结果:

 

分析原因:

当“==”施加于原始数据类型变量时,是比较变量所保存的数据是否相等

当“==”施加于引用类型变量时,是比较这两个变量是否引用同一对象。

引用代表地址,所以“==”实际上相当于比较两个引用类型变量中保存的对象地址是否相同。

 

3.     如何比较两个对象的“内容”是否一样:

验证结果:                          重写基类得结果截图:

                                              

两个对象的“内容”,其实是指它们在某一时刻的所有字段的值,“内容相等”,其实是就“对应字段值”一致

4.     动手动脑1

 

Foo()没有构造函数,需要添加一个构造函数。或者在调用的时候加一个整数型的参数。

如果类提供了一个自定义的构造方法,将导致系统不再提供默认构造方法

5.     进行试验2

运行结果:

Java字段初始化归律:

  1. 执行类成员定义时指定的默认值或类的初始化块,到底执行哪一个要看哪一个“排在前面”。
  2. 执行类的构造函数。
  3. 类的初始化块不接收任何的参数,而且只要一创建类的对象,它们就会被执行。因此,适合于封装那些“对象创建时必须执行的代码”。

6.     动手动脑2

 

运行结果:

 

静态初始化的执行顺序:

  1. 静态初始化块只执行一次。
  2. 创建子类型的对象时,也会导致父类型的静态初始化块的执行。

 

posted @ 2015-10-17 23:38  翼舞尘曦  阅读(130)  评论(0编辑  收藏  举报