Java思维---final关键字

19 阅读1分钟

final关键字可以用来修饰类、方法和引用。

若Labrador作为最底层的类,后面无子类, 此时使用final标志Labrador是最终类。


一、final修饰类

final修饰的类不能被继承。

public final class Labrador extends Dogs{}

二、final修饰方法

final修饰的方法不能重写,但可以被使用。

// 在Dogs类中
public final boolean isGuideBlindness(){
    return false;
}

//---------------------------------------------

// 在Labrador类是中
/* Labrador类是Dogs类的子类
   Dogs类中用final定义了isGuideBlindness()方法
   则此时Labrador类中不能重写父类中的isGuideBlindness()方法
*/
public boolean isGuideBlindness(){
    return ture;
}
// isGuideBlindness()方法运行不通过

三、 修饰引用

  1. 如果引用为基本数据类型,则该引用为常量,final修饰的常量不能被修改。
private static final String TEXT_COMMUNITY_NAME="NanG";

此时不能再更改TEXT_COMMUNITY_NAME的赋值,它处于写死状态。

  1. 如果引用为引用数据类型,比如对象、数组,则该对象、数组本身可以修改,但指向该对象或数组的地址的引用不能修改。

  2. 如果引用为类的成员变量,则必须当场赋值,否则编译会报错。