Java关键字 --- final

final 可以用来修饰 类,方法,变量(成员变量和局部变量)

1 修饰类

表明这个类不能被继承,final 类中的所有成员方法都会被隐式的指定为 final方法
在使用final修饰类的时候,要注意谨慎选择,除非这个类真的在以后不会用来继承或者出于安全的考虑,尽量不要将类设计为final类

2 修饰方法

可以把该方法锁住,被 final 修饰的方法,在子类中不能被覆盖
类的 private方法,会隐式得被指定为 final方法

3 修饰变量

final 变量,如果是基本数据类型的变量,则其数值,一旦初始化,便不能再更改;如果是引用类型的变量,在初始化之后,便不能再指向另一个对象(但是其内容可以改变)

class MyClass {
    void changeValue(final StringBuffer buffer) {
         buffer.append("world");
    }
}

public class Test {
   public static void main(String[] args)  {
        MyClass myClass = new MyClass();
        StringBuffer buffer = new StringBuffer("hello");
        myClass.changeValue(buffer);
        System.out.println(buffer.toString());
   }
}
// 输出结果
helloworld

class MyClass {
   public int i = 0;
}

public class Test {
    public static void main(String[] args)  {
       final MyClass myClass = new MyClass();
       System.out.println(++myClass.i);
    }
}
// 输出结果 
1
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章