感悟
相当重要的一章,初始接触可能会不理解,觉得没什么有,有一定编程经验了一定要回来看这章。
笔记
- 5.1用构造器确保初始化
创建对象的时候,自动调用构造器,相当于一种特殊类型方法,没有返回值。
构造器分:无参构造器(默认构造器),有参构造器
-
5.2方法重载
1)区分重载方法
2)涉及基本类型的重载
3)以返回值区分重载方法 (否定) -
默认构造器
无定义构造器,则默认有一个默认构造器
有定义有参构造器,则不会再有默认构造器
- 5.4this关键字
1)在构造器中调用构造器
2)static的含义
this. 时候表示“所操作对象的引用”,这句话要结合2.1反复理解
this(参数)表示调用构造器,且必须置于起始,且只能调用一次
static没有this,static是类方法,this是对象引用,对象是用类new出来的。所以对象中可以用static,static中不能用this
- 5.5清理:终结处理和垃圾回收
1)finalize()的用途何在
2)你必须实施清理
3)终结条件
4)垃圾回收器如何工作
System.gc(); //调用的是 finalize()方法
涉及到JVM,这里了解就好,后续学习JVM可继续深入。
- 5.6成员初始化
1)指定初始化
基本成员默认有一个初始值,其他类定义不初始化则为null
- 5.7构造器初始化
1)初始化顺序
2)静态数据的初始化
3)显式的静态初始化
4)非静态实例初始化
顺序优先,且变量优先于构造器。
静态变量又优先于非静态变量
加载class-》加载静态变量-》创建对象-》基本类型默认且引用为null-》字段定义初始化-》执行构造器
- 5.8数组初始化
1)可变参数列表
同类型 f(Integer... args)
- 5.9枚举类型
enum类似定义一种新数据类型,自动toString(),快速变为数组,配合switch使用
- 5.10总结