final关键字在Java中表示的意思是最终,也可以成为完结器。可以使用final关键字声明类、属性、方法,在声明时需要注意一下几点:
使用final声明的类不能有子类;
使用final声明的方法不能被子类覆写;
使用final声明的变量成为常量,常量不可以修改;
【使用final修饰的类不能有子类】
final class A
{
//使用final定义类,不能被继承
}
class B extends A
{
//错误,不能继承使用final声明类
}
运行结果为:
编译时出现上述错误。
【使用final修饰的方法不能被子类覆写】
class A
{
//使用final声明方法,不能被覆写
public final void print(){
System.out.println("Hello");
}
}
class B extends A
{
//错误,不能覆写使用final声明的方法
public final void print(){
System.out.println("ZZZZ");
}
}
运行结果为:
程序编译时出现上述错误。
【被final修饰的变量即成为常量,常量是不能被修改的】
class A
{
//使用final声明的变量就是常量,不能修改
private final String info="HELLO";
public final void print(){
info="hello";
}
}
运行结果为:
使用final定义的常量本身不能被修改,修改时会出现错误。
final变量的声明规则:在使用final声明变量时,要求全部的字母大写,这点在开发中是非常重要的,所以上述代码可以进行改进,这里就不再重复。
如果一个程序中的变量使用public static final声明,则此变量将称为全局变量,如下代码:
public static final String INFO=”HELLO”;