在Java中,final关键字可以用来修饰类、方法和变量(包括成员变量和局部变量)。
final 对于常量来说,意味着值不能改变,例如 final int i=100。这个i的值永远都是100。但是对于变量来说又不一样,只是标识这个引用不可被改变,例如 final File f=new File("c:\\test.txt");那么这个f一定是不能被改变的,如果f本身有方法修改其中的成员变量,例如是否可读,是允许修改的。形象的比喻:一个女子定义了一个final的老公,这个老公的职业和收入都是允许改变的,只是这个女人不会换老公而已。
下面举例子说明:
- //java中final关键字的使用
- //被成为完结器,表示最终的意思
- //final能声明类,方法,属性
- //使用final声明的类不能被继承,使用finl声明的方法不能被重写
- //使用final声明的变量变成常量,常量是不能被修改的
- //在一个文件中只能存在一个public class
- final class People{
- }
- /*不能被继承,所以这样的写法是错误的
- class Student extends People{
- }
- */
- class P{
- final void tell(){
- }
- }
- class E extends P{
- /* 父类中方法被声明为final类型,即不能被重写
- void tell(){
- }*/
- }
- public class HelloWorld{
- public static void main(String[] args){
- final String Name = "fanming";
- //Name = "asdada"; 使用final声明的变量变成常量,常量是不能被修改的
- }
- }