Java中final表示最终的形态,即不能被修改。不过对于不同的类型,final修饰的意义有所不同。

修饰类

使用final修饰的类,表示该类不可被继承。如下图所示

Java中final修饰类

我们继承了一个final类型的类则会提示:Cannot inherit from final 'FinalClassDemo'。

修饰方法

使用final修饰的方法,表示该类的方法不能被重写。如下图所示:

Java中final修饰方法

在上面例子中FinalClassDemo 有两个方法 hello1()和hello2()其中hello2()有final关键字修饰是不能重写的,否则提示:'hello2(String)' cannot override 'hello2(String)' in 'FinalClassDemo'; overridden method is final

修饰变量

使用final修饰变量,则会将该变量变成常量,一旦初始化则不能修改。如图:

Java中final的作用

如果我们运行该代码则会报错: error: cannot assign a value to final variable a