# Java 语言特性
# 异常
# 若try语句块中包含“return”语句,finally语句块会执行吗?
会执行。只有两种情况finally块中的语句不会被执行:
- 调用了System.exit()方法;
- JVM“崩溃”了。
# 异常的层次结构
- Throwable类 是异常层级中的基类
- Error类 表示内部错误 这类错误使我们无法控制的
- Exception表示异常,RuntimeException及其子类属于未检查异常 这类异常包括ArrayIndexOutOfBoundsException、NullPointerException等 应该通过条件判断等方式语句避免未检查异常的发生
- IOException及其子类属于已检查异常
# 反射
# 反射的作用与原理
运行时获取类的各种定义信息,比如定义了哪些属性与方法。
原理是通过类的class对象来获取它的各种信息。
# 注解
# 注解的基本概念与使用
注解可以看作是“增强版的注释”,它可以向编译器、虚拟机说明一些事情。
注解是描述Java代码的代码,它能够被编译器解析,注解处理工具在运行时也能够解析注解。
注解本身是“被动”的信息,只有主动解析它才有意义。
除了向编译器/虚拟机传递信息,我们也可以使用注解来生成一些“模板化”的代码。