Java中final关键字的使用

Java中final关键字的使用

final关键字可以修饰类、成员变量和方法中的局部变量

1、final类

​ 可以使用final将类声明为final类,final类不能被继承。例如

final Class A{
	.....
}

​ A类就是一个final类,将不允许任何类声明成A的子类。有时是出于安全性的考虑,将一些类修饰为final类。例如,Java在java.lang包中提供的String类对于编译器和解释器的正常运行有很重要的作用,Java不允许用户程序扩展String类。

2、final方法

​ 如果用final修饰父类中的一个方法,那么这个方法不允许子类重写,也就是说,不允许子类隐藏可以继承的final方法(老老实实的继承,不允许任何的篡改。

3、常量

​ 如果成员变量或局部变量被修饰为final,那它就是一个常量。由于常量在运行期间不允许再发生任何变化,所以常量在声明时一般没有默认值,这就要求程序在声明常量时必须指定该常量的值。

public class FinalTest {
    static class A{
        final double PI = 3.1415926;//声明常量PI并赋值

        public double getArea(final double r){
            //r使用了final修饰,无法对r做修改
            return PI*r*r;
        }

        public final void finalSpeak(){
            System.out.println("这是一个final方法,你是没办法改动的噢~");
        }
    }

    public static void main(String[] args) {
        A a = new A();
        System.out.println("半径为5的圆的面积为:" + a.getArea(5));
        a.finalSpeak();
    }
}

输出结果为:

半径为5的圆的面积为:78.539815
这是一个final方法,你是没办法改动的噢~

你可能感兴趣的:(Java进阶自学笔记,java)