Java核心技术 卷I 基础知识 学习笔记(5)

参考:Java核心技术 卷I 基础知识

反射库提供了一个非常丰富且精心设计的工具集,以便编写能够动态操纵Java代码的程序。这项功能被大量地应用与JavaBeans中,它是Java组件的体系结构。

能够分析类能力的程序成为反射。反射机制的功能极其强大,在下面可以看到,反射机制可以用来:

  • 在运行时分析类的能力
  • 在运行时查看对象
  • 实现通用的数组操作代码
  • 利用Method对象,这个对象很像C++中的函数指针。

反射是一种功能强大且复杂的机制。

在程序运行期间,Java运行时系统始终为所有的对象维护一个被称为运行时的类型标识。这个信息跟踪着每个对象所属的类。虚拟机利用运行时类型信息选择相应的方法执行。

异常有两种类型:未检查异常和已检查异常。对于已检查异常,编译器将会检查是否提供了处理器。然后有很多常见的一场,例如,访问null引用,都属于未检查异常。编译器不会查看是否为这些错误提供了处理器。毕竟,应该精心地编写代码来避免这些错误的发生,而不要将经历花在编写异常处理上。

并不是所有的错误都是可以避免的。如果竭尽全力了还是发生了异常,编译器就要求提供一个处理器。

继承的设计技巧:

  • 将公共操作和域放在超类
  • 不要使用受保护的域
  • 使用继承实现"is-a"关系
  • 除非所有继承的方法都有意义,否则不要使用继承
  • 在覆盖方法时,不要改变语气的行为
  • 使用多态,而非类型信息
  • 不要过多地使用反射

猜你喜欢

转载自blog.csdn.net/sxllllwd/article/details/83743709
今日推荐