JAVA语言 关键字

final 关键字

final关键字的使用:

被final修饰的变量,引用地址不能改变,值可以改变

final StringBuffer a= new StringBuffer("immutable");  
final StringBuffer b= new StringBuffer("not immutable");  
//a=b;                 // 编译期错误  
a.append(" xx");       // 改变引用的内容  
System.out.println(a); // 结果为:immutable xx  
  • 修饰类
    如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能同时声明为abstract
    final或者interface final的。
  • 修饰方法
    将方法声明为final,可以保证它们在使用中不被改变。被声明为final的方法也同样只能使用,不能重载。但是子类可以继承父类的final方法。
  • 修饰变量
    表示属性值第一次初始化后不能被修改。final属性可以直接初始化或在构造函数中初始化
    如果属性是直接初始化,则其值不能被其它函数(包括构造函数)修改。
public final int a=2;  
public BaseType(){// 构造方法  
    a=3;      // 编译报错  
}  

使用final的意义:
1.为方法“上锁”,防止任何继承类改变它的本来含义和实现。设计程序时,若希望一个方法的行为在继承期间保持不变,而且不可被覆盖或改写,就可以采取这种做法。
2.提高程序执行的效率,将一个方法设成final后,编译器就可以把对那个方法的所有调用都置入“嵌入”调用里(内嵌机制)。
3.只需要加个final关键字字即可,这样就不会抛出笼统的异常类型,这叫“final重抛‘。
}catch(final Exception e){

interface

  • 任何在interface里声明的成员变量,默认为public static final。

参考:

Java 7之基础 - final、finally和finilize关键字

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值