第五章-继承
- 继承使类具有复用性,当需要复用一个类时可以直接继承它。
- 多态是在继承的基础上的概念,ex: B是A的子类,他们都有方法f,调用哪个类的f方法取决于对象是A类还是B类。多态使得对子类的扩展不需要修改父类的代码。
- 动态绑定:子类父类都有相同的方法名 f(int x),虚拟机寻找应该调用哪个方法的过程,就是动态绑定。方法重载也是在这个时候发生。
- 注意!动态绑定和动态代理不能混淆!
静态绑定:如果是static, private, constructor, final这些域非常确定的方法,虚拟机直接调用。
第六章-接口与内部类
接口中方法默认为public
-
第十二章-泛型
泛型使得代码可以被不同类型的对象所重用
- 增强可读性(根据<>内的类名知道方法接受什么类)
- 增强安全性(<>中的类与提供给它的类不一致时,在编译时就会报错,不用等到运行时)
第十四章-多线程
为什么使用多线程?
- 线程间共享变量比进程间共享变量更容易
- 创建和维护线程的开销小
如何开启一个线程?
- 创建一个类,实现Runnable接口的run方法
- 实例化这个类,给Thread对象thread
- thread.start()
run()和start()方法的区别?