详细版脑图
脑图目录
1. 类、超类和子类
2. Object类
3. 泛型数组列表
4. 对象包装器与自动装箱
5. 参数数量可变的方法
6. 枚举类
7. 反射
8. 继承的设计技巧
提问环节
- 抽象类和接口的区别是什么?
- Object类中的hashCode方法底层是如何实现的?它返回的真的是对象存储的地址吗?
- 为什么重新定义equals方法,就需要重新定义hashCode方法?
- Arrays.toString和Arrays.deepToString底层是如何实现数组打印的?
- 为什么超类toString方法通过getClass().getName()打印类名时,子类调用super.toString()打印的却是子类的类名?
- 在Java中什么是泛型?它为了解决哪些问题?怎么实现的?
- 参考 Java泛型 | 菜鸟
- 后面的学习中有专门关于泛型的内容,因此这一块暂时省略
- ArrayList自动扩容底层实现方式是怎么样的?
- 除了ArrayList,还有其他类似的集合类吗?它与ArrayList的相同与不同之处又是什么?
- 参考
- 后面会有一个专门的模块讨论集合,暂时不深入研究