java之final关键字

如果你不相信努力和时光,那么成果就会是第一个选择辜负你的。不要去否定你自己的过去,也不要用你的过去牵扯你现在的努力和对未来的展望。不是因为拥有希望你才去努力,而是去努力了,你才有可能看到希望的光芒。java之final关键字,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

最近在刷面试题的时候,发现自己对final关键字的了解还是不够完善,故此在这出一篇专门针对final修饰词的文章。
首先,final可以修饰哪些东西:

1. final修饰类
final修饰的类不能被子类继承,如String就是被final修饰的,保证了String的安全性
在这里插入图片描述
2.final修饰方法
final修饰的方法不能被子类重写
事实上我们经常使用的private修饰方法被隐式的指定为final,如果在子类中定义的方法和基类的一个private修饰的方法签名相同的话,此时的子类的方法就不是重写基类的方法,而是在子类中定义了一个新的方法。
在这里插入图片描述
注意的是:这里指的是不能重写,但没说不能重载呀!!!

3.final修饰变量
final修饰成员变量时必须赋值,而局部变量可以暂且不赋值,如果不赋值的话会直接报错。
在这里插入图片描述
在这里插入图片描述
这里和static区分一下,static修饰变量的时候会自动赋值,并不需要手动赋值才能使用。只不过可能是你不想要的值,但他还是能够直接使用的。

4.final搭配static使用修饰

final static double PAI_Value=3.14;

我们结合static和final的特点就知道了,静态变量不需要对象就可以使用,而且可以被全局调用,当再加上final后,它就变成了一个全局的常量。

5.final修饰对象
final修饰对象的时候可以说是引用类型,final使得引用不变,也就不能引用其他对象,但是被引用的对象本身是可以修改的。
在这里插入图片描述
注意的是,网上有部分人说final可以修饰接口.
这个是错误的。
在这里插入图片描述
给张图片说明比理论更为有说服力。

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

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/198004.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!