您掌握了final关键字吗?

Java中,final关键字可以修饰变量,方法和类。它们表达的意义如下:

1:修饰变量:该变量赋值之后不可再修改或重新赋值,这种变量可以当成常量使用

2:修饰方法:方法不可被重写

3:修饰类:类不可被继承

本篇文章老谭专门探讨一下第一种情况。

1,  final变量的赋值:

1
2
3
4
5
6
public  class  FinalDemo {
          final  int  NUM;
          void  m1() {
                    final  int  NUM1;
          }

该段代码编译不会成功。final修饰的类成员NUM是必须与声明时同时赋值的,即要使用如下语句:

1
final  int  NUM= 20 ;

final修饰方法中的局部变量则无需同时赋初始值,可以在使用之前赋值,但不可多次赋值。

但是可以使用初始化块为final修饰的类成员赋值,而且实例初始化块甚至可以出现在类成员声明之前:

1
2
3
4
5
6
7
8
9
public  class  FinalDemo {
          final  int  NUM;
         {
             NUM= 20 ;
         }
          void  m1() {
             final  int  NUM1;
          }

类似的,如果finalstatic同时使用的话,则应该使用静态初始化块为该成员赋值。

 

2,  final修饰引用类型数据:

假设有以下两个类:

1
2
3
4
5
6
7
8
9
10
pubic  class  User{
          int  num;
}
public  class  FinalDemo {
         final  User user= new  User();
         public  static  void  main(String[] args) {
                FinalDemo demo= new  FinalDemo();
                demo.user= new  User();
        

编译时demo.user=new User();这句代码会出现编译错误,因为userfinal修饰的,不可重新赋值。但是以下代码能够成功编译:

1
2
3
4
5
6
7
public  class  FinalDemo {
          final  User user= new  User();
         public  static  void  main(String[] args) {
                            FinalDemo demo= new  FinalDemo();
                            demo.user.num= 30 ;
        

final变量中的非final属性是可以重新赋值的。

内容概要:本文详细介绍了Rust在系统编程中的应用,包括基础知识、核心技术及开发流程。首先阐述了Rust语言的基础及环境搭建,强调了其强类型系统和现代语法。接着深入探讨了所有权机制与内存安全,指出Rust通过所有权系统确保内存安全,避免悬垂指针和内存泄漏。再者,讲解了Rust的并发编程模型,通过消息传递和无数据竞争的线程模型实现安全并发。此外,讨论了Rust在底层硬件访问与嵌入式开发中的应用,展示了其在资源受限平台上的适应性。随后,介绍了系统调用与内核模块开发,说明了Rust如何调用操作系统底层API并实现与现有内核代码的无缝集成。还提及了性能优化与调试技巧,如使用编译器优化选项和工具链支持。最后,通过实战项目案例解析和社区资源展望,展示了Rust在系统编程领域的潜力和发展前景。; 适合人群:有一定编程基础,尤其是对系统编程感兴趣的开发者,包括操作系统内核开发、驱动程序编写、嵌入式系统开发等领域的工程师。; 使用场景及目标:①学习Rust语言的基础知识和环境搭建,掌握强类型系统和现代语法;②理解所有权机制与内存安全,避免传统系统编程中的常见错误;③掌握并发编程模型,实现安全高效的多线程操作;④了解底层硬件访问和嵌入式开发,适应资源受限平台;⑤掌握系统调用与内核模块开发,实现与现有系统的无缝集成;⑥学习性能优化与调试技巧,提高系统软件的运行效率和稳定性;⑦通过实战项目案例解析,掌握系统编程的实际应用。; 其他说明:Rust作为系统编程的新选择,不仅提升了传统系统软件的安全性,还通过现代语言特性和工具链优化了开发效率。开发者应充分利用Rust的特性,构建更加健壮、高效的系统软件,迎接未来计算机领域的新挑战。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值