JAVA——final修饰符

本文探讨了final变量在Java中的特性,解释了它们如何被初始化且只能初始化一次,以及为何final对象的引用不可改变但其内部数据可以修改。此外,还讨论了final与static结合创建类常量的常见用法。

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

final变量:http://www.iis7.com/b/yqlj/ 批量友情链接检测
final变量能被显式地初始化并且只能初始化一次。被声明为final的对象的引用不能指向不同的对象。但是final对象里的数据可以被改变。也就是说final对象的引用不能改变,但是里面的值可以改变。
final修饰符通常和static修饰符一起使用来创建类常量。

### Java 中访问修饰符与 `static` 关键字 #### 访问修饰符概述 在Java编程语言中,访问控制关键字用于定义、方法、变量等成员的可见性和访问权限,以确保的封装性和数据的安全性。Java 的访问控制关键字主要有四种:`public`、`protected`、`private` 以及默认(default),每种访问控制关键字的作用范围和应用场景各不相同[^1]。 #### 静态关键字 (`static`) `static` 是一种非访问修饰符,在Java中主要用于创建独立于任何对象实例的方法或变量。当声明为静态时,该成员属于整个而不是某个特定的对象实例。这意味着所有此的实例共享同一个静态成员副本。通常情况下,静态方法可以直接通过名调用而无需创建对象实例;同样地,静态字段也能够在未实例化的情况下被访问。 #### 使用场景对比 | 特征/修饰符 | private | default (package-private) | protected | public | | -- | --- | --- | --- | --- | | **同一内** | 可见并可访问 | 可见并可访问 | 可见并可访问 | 可见并可访问 | | **同一包内的其他** | 不可见也不可访问 | 可见并可访问 | 可见并可访问 | 可见并可访问 | | **不同包子** | 不可见也不可访问 | 不可见不可访问 | 可见并可访问 | 可见并可访问 | | **任意位置的所有** | 不可见也不可访问 | 不可见不可访问 | 不可见不可访问 | 可见并可访问 | 表中展示了各种访问级别下成员对于不同型代码单元的可见度情况[^4]。 #### 区别说明 - **作用域差异** - 对于访问修饰符而言,主要影响的是程序结构内部元素之间相互作用的方式——即哪些部分能够看到并操作另一些部分的数据或行为。 - **生命周期关联** - 被标记为 `static` 的组件存在于单个内存空间里,并且在整个应用程序运行期间保持存在直到JVM终止为止; - 非静态成员则依赖具体的对象实例存活周期,每当新建立一个对象就会分配相应的新资源给这些成员。 - **初始化时机** - 加载阶段完成之后即可立即使用静态成员; - 实例化的时刻才会触发非静态成员的确立过程。 ```java class Example { // Private member can only be accessed within this class. private int secretNumber; // Default access modifier means it's accessible by classes in the same package but not outside of it. String message = "Hello from default"; // Protected members are visible to subclasses even across packages and also any other class inside its own package. protected double salary; // Public fields or methods have no restrictions on who can see them; they're available everywhere without limitation. public final String APP_NAME = "My Application"; } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值