final关键字

本文详细介绍了Java中的final关键字,包括它如何修饰类、方法、局部变量和成员变量。final关键字使得类无法被继承,方法无法被覆盖,局部变量和成员变量一旦赋值后不可更改。对于final成员变量,必须在初始化阶段进行赋值,且所有构造方法中都要确保对其进行赋值。了解final的使用对于编写安全、稳定的代码至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

final关键字的含义:

final关键字代表最终的、不可改变的

常见的四种用法:

① 可以用来修饰一个类
② 可以用来修饰一个方法
③ 可以用来修饰一个局部变量
④ 可以用来修饰一个成员变量
 

1、final关键字用于修饰类

格式如下:

	public final class 类名称 {
		...
	}

作用:使当前这个类不能有任何子类。(“太监类”)
注意:一个类如果是final的,那么其中所有的成员方法都无法进行覆盖重写

2、final关键字用于修饰成员方法

格式如下:

	修饰符 final 返回值类型 方法名称(参数列表) {
		方法体
	}

作用:当final关键字用来修饰一个方法的时候,这个方法就是最终方法,不能够被覆盖重写
注意:对于类、方法来说,abstract关键字和final关键字不能同时使用,因为作用相互矛盾 

3、final关键字用于修饰局部变量

格式如下:

	// ① 第一种基本数据类型情况下的格式
	final 基本数据类型 数据名称 = 值;
	// ② 引用数据类型情况下的格式
	final 类型 对象名 = new 类名();
	//例如:final Student stu = new Student();

作用:当final关键字用于修饰局部变量的时候,这个局部变量就不能更改,“一次赋值,终生不变”
注意:对于 基本类型 来说,不可改变指的是变量当中的数据不可改变,但是对于 引用类型 来说,不可改变的指的是变量当中的地址值不可改变

4、final关键字用来修饰成员变量


对于成员变量来说,如果使用了final关键字修饰,那么这个变量也照样是不可变的
① 由于成员变量具有默认值,所以用了final之后必须手动赋值,不会再给默认值了
② 对于final的成员变量,要么使用直接赋值,要么通过构造方法赋值,只能二选一
③ 必须保证类当中所有重载的构造方法,都最终会对final的成员变量进行赋值
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值