深入理解final关键字_关键词选取和设置中最重要的原则

深入理解final关键字_关键词选取和设置中最重要的原则final在Java中是一个保留的关键字,可以声明成员变量、方法、类以及本地变量

final在Java中是一个保留的关键字,可以声明成员变量、方法、类以及本地变量。一旦你将引用声明作final,你将不能改变这个引用了,编译器会检查代码,如果你试图将变量再次初始化的话,编译器会报编译错误。

一.final关键字基本用法

1.修饰变量  

凡是对成员变量或者局部变量(在方法中的或者代码块中的变量称为本地变量)声明为final的都叫作final变量。final变量经常和static关键字一起使用,作为常量。

final修饰基本数据类型的变量时,必须赋予初始值且不能被改变,修饰引用变量时,该引用变量不能再指向其他对象

例如:

深入理解final关键字_关键词选取和设置中最重要的原则

当final修饰基本数据类型变量时不赋予初始值以及引用变量指向其他对象时就会报错

当final修饰基本数据类型变量被改变时,就会报错

深入理解final关键字_关键词选取和设置中最重要的原则

2.修饰方法

final也可以声明方法。方法前面加上final关键字,代表这个方法不可以被子类的方法重写。如果你认为一个方法的功能已经足够完整了,子类中不需要改变的话,你可以声明此方法为final。final方法比非final方法要快,因为在编译的时候已经静态绑定了,不需要在运行时再动态绑定。

深入理解final关键字_关键词选取和设置中最重要的原则

3.修饰类

使用final来修饰的类叫作final类。final类通常功能是完整的,它们不能被继承。Java中有许多类是final的,譬如String, Interger以及其他包装类。

深入理解final关键字_关键词选取和设置中最重要的原则

二.深入分析final关键字

1.被final修饰的对象内容是可变的

虽然对象被final修饰对象不可被继承,但其内容依然可以被改变

深入理解final关键字_关键词选取和设置中最重要的原则

2.final关键字与static对比

static关键字修饰变量时,会使该变量在类加载时就会被初始化,不会因为对象的创建再次被加载,当变量被static 修饰时就代表该变量只会被初始化一次

深入理解final关键字_关键词选取和设置中最重要的原则

例如图中所示,被static修饰的变量j,虽然创建两个对象,对值并没有变化。

今天的文章深入理解final关键字_关键词选取和设置中最重要的原则分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/70368.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注