java关键字

final关键字

final修饰类

用final修饰的类为是最终类,最终类不能被继承

Father为父类(没有final修饰)

/*
 * 	1.final修饰类
 * 		表示该类是最终类,最终类不能被继承
 * 		System/String/Scanner就是final修饰的类
 * */
public class Father {
}

Son为子类

public class Son extends Father {
}

final修饰字段

 字段(Filed),也叫成员变量,包括实例变量和静态变量两大类

(1)final修饰的字段必须显示的赋值,经常在定义final字段的同时就赋值
(2)final修饰的字段不能再重新赋值
(3)一般情况下final与static都是同时使用,final字段所有字母都大写,称为final常量

	final int zz=2;//经常在定义时显示赋值
	final int t;
	public Father2(){
		t=3;//在构造方法中赋值
	}
	
	final static int qq=7;
	final static int p;
	static {      //静态代码块
		p=5;
	}

final修饰方法

final修饰的方法:不能被子类重写,但是可以被继承

final修饰局部变量

public class Test {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int x;
		x=10;
		x=101;
		
		final int y;//final局部变量,一旦初始化就不能再修改
		y=20;
		//y=202;
		
		Person p1=new Person("lisi", 11);
		final Person p2=new Person("zhangsan", 20);
		
		//final关键字修饰的是p2变量,是不能给p2变量赋值
		//p2变量不能再指向其他变量
		//p2=p1;
		//p2=new Person("wang", 22);
		//可以修改它的字段
		p2.name="lisisi";
	}

final修饰方法形参

final修饰方法形参时,在方法体中不能修改final形参的值
public class Test {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		m1(10, 20);  //在调用方法时,就会给final形参初始化
	}
	public static void m1(int x,final int y){
		//final修饰方法形参时,在方法体中不能修改final形参的值
		x=666;
		//y=99;
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值