final类

1.根据验证代码可以得知,final定义的类是无法被继承的:

理论基础:

final类的域是可以根据个人意愿选择是final或者不是final的,不论类是否被定义为final相同规则同样适用于定义于fianl

因为final类是禁止被继承的,因此,final类的定义的所有方法是默认为final的,隐式指代为final,因为是无法去进行覆盖的,在final类中给final添加final修饰词是十分没有意义的。

验证在同一个对象内部,final定义的值是可以被改变的:

完整示例代码如下所示:

class SmallBrain{}
final class Dinosaur{
    int i=7;
    int j=1;
    SmallBrain x=new SmallBrain();
    void f(){}
}
//class fu extends Dinosaur{}
public class ss {
    public static void main(String[] args){
        Dinosaur n=new Dinosaur();
        n.f();
        n.i=40;
        n.j=200;
        System.out.println("验证n.i="+n.i+"\n验证n.j="+n.j);
    }
}

如果想验证final定义的类是不可以被继承的,那么只需要将注释解除即可。

猜你喜欢

转载自blog.csdn.net/qq_35561207/article/details/84334744