第5章 初始化与清理
来源:互联网 发布:在哪看淘宝自动售货 编辑:程序博客网 时间:2024/05/18 01:52
1. 构造器(constructor)是一种特殊类型的方法,因为它没有返回值,这与返回值为空(null)不同。
2. 为何需要重载方法:①相同的词需要表达不同的含义;②构造器的存在必须要用到方法重载。
3. 重载方法有一个独一无二的参数类型列表,以此来互相区分,同时也可以用返回值来区分,但是如果编译器不能根据语境判断出语义,则不能通过编译。
4.涉及基本类型的重载:如果传入的数据类型(实参)小于方法中声明的形式参数类型,实际数据类型就会被提升(char型略有不同,如果无法找到恰好接受char参数的方法,就会把char直接提升到int型)。
5. 进一步理解方法调用:
这是内部的表示形式,不能这么编写但有助于理解。
6. 编码习惯:只有当需要明确指出对当前对象的引用时,才需要使用this关键字。
7. this的另一个用途:在构造器中调用构造器,以避免重复代码,但需要遵循规则:①尽管可以用this调用一个构造器,但却不能调用两个;②必须将构造器调用置于最起始处; ③除构造器之外,编译器禁止在其他任何方法中调用构造器。
8. Java的垃圾清理机制:P87(仍需理解)。牢记三点:①对象可能不被垃圾回收;②垃圾回收并不等于“析构”; ③垃圾回收只与内存有关。finalize()方法的使用尚未明确。
9. 初始化的过程就是引用得到对象的过程。
10. 无法阻止自动初始化的进行,它将在构造器被调用之前发生;初始化顺序:即使变量定义散布于方法定义之间,它们仍旧会在任何方法(包括构造器)被调用之前得到初始化。
11. 静态初始化只有在必要时刻才会进行。
12. 显式的静态初始化(静态块)(只进行一次):
13. 非静态实例初始化(实例初始化子句)(在构造器之前执行):
14. 数组的赋值:
这里的a2=a1只是复制了引用,所以a1和a2是相同数组的别名。
15. 数组元素中的基本数据类型值会自动初始化成空值。
16. Java支持这样对数组进行初始化,同时并没有引用,只是申请了一个对象:
17. 可变参数列表还需要进一步理解。编码习惯:你应该总是只在重载方法的一个版本上使用可变参数列表,或者压根就不是用它。
18. 枚举类型enum是一个类,并且有自己的方法,很大的用处是和switch相组合。
- 第5章 初始化与清理
- 第5章 初始化与清理
- 第5章 初始化与清理
- 《Thinkinginjava》第5章-初始化与清理
- 第5章 初始化与清理
- 第5章 初始化与清理
- 第5章 初始化与清理
- 第5章 初始化与清理
- Java编程思想第5章:初始化与清理
- Java - Thinking in Java 第5章 初始化与清理
- Java编程思想 第5章 初始化与清理
- 5 初始化与清理
- 5-初始化与清理
- Think in Java第5章 初始化与清理 (笔记)
- 控制执行流程,初始化与清理-java编程思想-第4、5章
- 《Thinking In Java》学习笔记:第5章 初始化与清理
- Thinking in Java 第5章 初始化与清理 【可变参数列表】
- Thinking in Java 第5章 初始化与清理 【枚举类型】
- Leetcode-minimum-depth-of-binary-tree
- STL基础(二)
- 第4章 控制执行流程
- MongoDB主从复制
- 垃圾ac自动模板
- 第5章 初始化与清理
- EL表达式
- Mac添加环境变量全面解读
- 【JZOJ4597】现世斩
- 今天装逼只为明天引爆,小众营销不要死在大众路上
- 第6章 访问权限控制
- 【jzoj4598】【准备食物】【字典树】
- [数论] ACM 2015 Changchun B Count a*b
- 你创业为什么会失败?