Java-final关键字

2018-06-18 03:07:55来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

final:最终的,到此为止

分三种情况:

1、修饰类

表示该类不能被继承和扩展

final class A {}

class B extends A {}// 编译器报错,表示无法继承

2、修饰方法

子类无法覆盖和重写该方法

class A {
    final void method() {}
}

class B extends A {
    @override
    void method() {}// 编译器报错,无法重写该方法
}

3、修饰变量

对对象来说,保证变量的引用不变,其值可以被修改

对基本类型数据时,保证值不变。修饰方法参数时也是一样

public class FinalDemo {

    public static void main(String[] args) {
        String a = "Hello2";
        final String b = "Hello";
        String c = b + 2;
        System.out.println(a.equals(c));
        String d = "Hello";
        String e = d + 2;
        System.out.println(a.equals(e));
        
        // 修改当前对象的数值
        final StringBuffer tempbuffer = new StringBuffer("Hello, world!");
        tempbuffer.append("This is final string!");
        
//        tempbuffer = new StringBuffer();// 无法重新引用新的数据
    }

}

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Java 抽象类与final用法

下一篇:由浅入深理解----java反射技术