final
(2)特点:
A:它修饰的类不能被继承
B:它修饰的成员方法不能被重写
C:它修饰的变量是常量
(3)思考:
A:final修饰的变量一般在定义的时候就给赋值了,那么,请问有没有可能在其他情况下赋值?
有。在构造方法完毕前都行。
class OuterInnerDemo
{
final int x; //此处就没有在定义时直接赋值,在构造函中给赋值
OuterInnerDemo()
{
x=5;
}
public static void main(String[] args)
{
int x=new OuterInnerDemo().x;
System.out.println(x);
}
}
B:final修饰基本类型和引用类型
final修饰基本类型:值不能改变
final修饰引用类型:地址值不能改变,对象的内容是可以发生改变的。