final 关键字

                         **final 关键字**

1.final关键字修饰的类不能被继承,被final修饰的类中的成员方法都会被隐式指定为final方法,被final修饰的类中的成员变量根据实际需求是否设计为final。被设计为final类的有String、System等

2.final修饰的成员变量不能被更改,必须赋予初始值
有两种赋值方式,一种是直接赋值,另一种是在构造方法里面赋值。
如果final修饰的变量是基本类型则这个变量的值不会变,
如果修饰的是引用类型的变量,则这个变量的引用的地址不能修改,这个引用的变量的内容可以修改。

3.final如果修饰方法的话,那么这个方法不能被重写,一个方法被private修饰会被隐式的指定为final方法。

//final类不能被继承
public class FinalClass {

//final修饰的成员变量必须赋予初始值(基本数据类型),如果是引用类型那么该成员变量的引用地址是不变的
private final static int a = 0;
public final static String s = "sss";
//final static StringBuffer str = new StringBuffer("18hao"); 

public FinalClass(){

// this.s = s;
//如果定义变量的时候没有给成员变量赋值,那么在构造函数中必须赋值
//static的有限与构造函数执行
// s = “sss”;
}
//final方法不能被子类重写
public final void finalMenth(){

}
//final前面加private子类中可以有方法名相同的方法
private final void finalMenth1(String s){
	
	
	
}

public void noFinal(){
	
}
//私有的方法是隐式的final方法不能被继承子类重写,但子类中可以有方法名相同的方法
private void noFinalPrivate(){
	
}
public static void main(String[] args) {
	
	final StringBuffer str = new StringBuffer("18hao"); 
	//a = 1;不能再次赋值给
	
	str.append("shi");
	
	//str = new StringBuffer("19hao");
	//s = "h";
	final String x = "zsd";
	System.out.println(x);
	//String x = x+"sdf";

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值