基础问题:final关键字

最常用的final就是定义常量

public static final double PI_VAULE = 3.14;

final方法

首先,我们应该了解定义为final的方法不能被重写。

将方法定义为final类型可以防止任何子类修改该类的定义与实现方式,同时定义为final的方法执行效率要高于非final方法。在修饰权限中曾经提到过private修饰符,如果一个父类的某个方法被设置为private修饰符,子类将无法访问该方法,自然无法覆盖该方法,所以一个定义为private的方法隐式被指定为final类型,这样无须将一个定义为private的方法再定义为final类型。

final类

定义为final的类不能被继承。

如果希望一个类不允许任何类继承,并且不允许其他人对这个类有任何改动,可以将这个类设置为final形式。
final类的语法如下:
final 类名{}
如果将某个类设置为final形式,则类中的所有方法都被隐式设置为final形式,但是final类中的成员变量可以被定义为final或非final形式。

在项目中创建FinalClass类,在类中定义doit()方法和变量a,实现在主方法中操作变量a自增。

final class FinalClass
{
    int a = 3;
 
    void doit()
    {
    }
 
    public static void main(String args[])
    {
        FinalClass f = new FinalClass();
        f.a++;
        System.out.println(f.a); // 结果:4
    }
}

你可能感兴趣的:(基础问题:final关键字)