final关键字:
1.1 final在java中表示最终的意思,也可以成为完结器。
可以使用final关键字声明类,属性,方法。
A:使用final声明的类不能有子类
final class A //使用final定义类,不能有子类
{
};
class B extends A //错误,不能被继承
{
};
结果:
F:\java>javac FinalDemo01.java
FinalDemo01.java:4: 无法从最终 A 进行继承
class B extends A //错误,不能被继承
^
1 错误
B:使用final声明的方法不能被子类所覆盖
class A //使用final定义类,不能有子类
{
public final void print(){
System.out.println("hello");
}
};
class B extends A //错误,不能被继承
{
public void print(){
System.out.println("world");
}
};
结果:
F:\java>javac FinalDemo01.java
FinalDemo01.java:9: B 中的 print() 无法覆盖 A 中的 print();被覆盖的方法
public void print(){
^
1 错误
C:使用final声明的变量即成为常量,常量不可以修改。
class A //使用final定义类,不能有子类
{
private final String info = "hello";
public final void print(){
info ="world";
}
};
结果:
F:\java>javac FinalDemo01.java
FinalDemo01.java:5: 无法为最终变量 info 指定值
info ="world";
^
1 错误
1.2 使用final声明的变量即为常量,常量必须大写
使用static final声明的变量是全局常量。。