java[17] final

Final

字面意思:最后的最终的

final可修饰变量和方法.

在某些情况,程序员可能有以下需求:

  1. 不希望父类中的某个方法被子类覆盖(override)时,可以用final关键字修饰.
  2. 当不希望某个类的某个变量被修改,可以用final修饰.
  3. 当不希望类被继承时,可以用final修饰.
package com.test;

public class Test1 {
	public static void main(String[] args) {
		BBB aa;
		aa = new BBB();
		System.out.println(aa.circle_rate);
		
	}
	
	
	

}

class AAA {
	int a = 100; //如果不给初始值默认为0
	final float  circle_rate = 3.1415926f;
	public void sendMsg(){
		System.out.println("发送消息");
		
	}
	final void ResiveMsg() {
		System.out.println("接收消息");
		
	}
			
	
	
}


class BBB extends AAA{
	int a = 200;
	float circle_rate = 3.1415926f +1;//在8.0中好像能够修改    
	/*void ResiveMsg() {
		System.out.println("接收消息");
	*/   //Cannot override the final method from AAA
		
	
}

执行结果:

4.1415925
 

Final 注意事项:

  1. final修饰的变量叫做常量,一般用xx__xx__xx来修饰
  2. final修饰的变量在定义时,必须赋值,并且以后不能再赋值。

 

final在什么时候用?

  1. 因为安全的考虑,类的某个方法不允许修改。
  2. 类不会被其他的类继承。
  3. 某些变量值是固定不变的,比如圆周率 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值