请说明 final 关键字修饰变量、方法、类各自的区别。修饰方法时,方法内部的数据能否被修改?修饰类时,类中方法能否被修改或重写?能否通过反射修改被 final 修饰的属性?是否在任何情况下都能通过反射修改?
考察说明
考察对 Java final 语义的完整理解,包括不可变性边界和反射的作用
回答思路
- 分别说明 final 修饰变量、方法、类的行为
- 解释 final 方法内部数据可变性及方法本身不可重写
- 说明 final 类不可继承,方法仍可改内部逻辑但不可重写
- 演示通过反射修改 final 字段的可能性和限制