【Java】 final关键字的使用

在Java中,final关键字用于限制类、方法或变量的行为。它可以应用于不同的上下文,具体作用如下:

1. 修饰变量

final用于修饰变量时,表示该变量是一个常量,一旦赋值后不能再改变。

public class FinalVariableExample {
    
    
    public static void main(String[] args) {
    
    
        final int MAX_VALUE = 100;
        // MAX_VALUE = 200; // 编译错误,因为MAX_VALUE是final变量
        System.out.println(MAX_VALUE);
    }
}

2. 修饰方法

final用于修饰方法时,表示该方法不能被子类重写(override)。

public class FinalMethodExample {
    
    
    public final void display() {
    
    
        System.out.println("This is a final method.");
    }
}

class SubClass extends FinalMethodExample {
    
    
    // public void display() { // 编译错误,因为display方法是final的
    //     System.out.println("This is an overridden method.");
    // }
}

3. 修饰类

final用于修饰类时,表示该类不能被继承。

public final class FinalClassExample {
    
    
    public void display() {
    
    
        System.out.println("This is a final class.");
    }
}

// class SubClass extends FinalClassExample { // 编译错误,因为FinalClassExample是final的
// }

4. 修饰局部变量

final也可以用于修饰局部变量,表示该变量在初始化后不能再改变。

public class FinalLocalVariableExample {
    
    
    public static void main(String[] args) {
    
    
        final int localVar = 50;
        // localVar = 100; // 编译错误,因为localVar是final的
        System.out.println(localVar);
    }
}

5. 修饰参数

final可以用于修饰方法参数,表示该参数在方法内不能被重新赋值。

public class FinalParameterExample {
    
    
    public void display(final int value) {
    
    
        // value = 100; // 编译错误,因为value是final的
        System.out.println(value);
    }

    public static void main(String[] args) {
    
    
        FinalParameterExample example = new FinalParameterExample();
        example.display(50);
    }
}

总结

  • 变量final变量是常量,一旦赋值后不能改变。
  • 方法final方法不能被子类重写。
  • final类不能被继承。
  • 局部变量final局部变量在初始化后不能改变。
  • 参数final参数在方法内不能被重新赋值。

猜你喜欢

转载自blog.csdn.net/u013675821/article/details/141059261