String类为什么是final的?——Java基础问题和答案汇总系列(1)
String类为什么是final的?——Java基础问题和答案汇总系列(1)
一,前言
今天,在某公司一面的经历中,自己表现的并不是很好,所以,现总结一下,给自己写点什么,警示自己,同时也给小菜鸟们一点可以参考的经验。以此篇博客鼓励和提醒自己,同时希望“后浪”面对同样的阻碍,可以勇往直前,乘风破浪,一惊九天。
二, 正文
2.1. Java基础问题和答案
2.1.1. String类为什么是final的?
final可以修饰类,方法,变量。———话外音:———编程需要记忆,而写作文也需要记忆,当一个对象有共性和个性的时候,需要编程时,抽取共性,重洗个性。…
相同类似的问题:
String类为什么不能被继承?
以上两个相类似的问题都可以做如下回答:
*核心回答第一层:String类是用final关键字修饰的所以不能被继承。——话外音——说明你看了java API或者其它书中的String类——其实,其它书中的String类也是因为书的作者看了java API,才写出你看的书。——写到这里——菜鸟们应该之道怎样学习java了吗?——话外音的话外音(out of out)——天外有天——???(自己想一想…)——这个问题到后面还有阐述,请耐心等待。
**本题核心回答第二层:String类被final关键字修饰是为了安全性考虑——话外音——说明你知道java面向对象编程的三大特性之一:继承,并且其中继承有一个功能就是子类可以改写父类的方法。
如下图所示:换汤不换药。String类是java的基础,不允许像下图这个样子。故String类要用final修饰。
***奥赛回答第三层:String类被final关键字修饰还是为了效率性考虑——此处没有话外音——自己好好想想。。。。。(给个提示:python中为什么不用“;”做为结尾?)
****超级未来回答第四层:String类和final关键字是怎么出现的——金银的产生将以前的:贝克,羊毛等一般等价物给取代了。那么:一般等价物就是java的基本数据类型:char和byte,金银就是String。Final is the law。Thinking about it. This is very important on your way。
最后
——我的回答:简单,**,有效。同时,我是一个小学生,如果有什么地方写的不对的,请大家谅解。
——下一篇回答:“HashMap的源码,实现原理,底层结构”——这个问题。
——敬请期待,下回精彩。
引用:
- Java基础面试题1-String类为什么是final的
- 你知道为什么考你这个?——Java面试题及答案汇总分析(5)
- JAVA并发多线程的面试问题及答案(基础部分)
- 应聘Java笔试时可能出现问题及其答案 (Java基础方面)
- java基础解析系列(五)---HashMap并发下的问题以及HashTable和CurrentHashMap的区别
- Java面试系列【final、finally、finalize区别】-finalize是什么,基础篇
- Java中String类为什么定义为final
- java 泛型基础问题汇总
- 一个final引发的的血案(java基础系列)
- Java基础 String类的一个小问题
- Java基础学习总结(74)——Java常见笔试题及答案汇总
- java基础解析系列(五)---HashMap并发下的问题以及HashTable和CurrentHashMap的区别
- 在java中String类为什么要设计成final
- java基础相关--String类相关问题(面试大多数会问到)
- 你知道为什么考你这个?——Java面试题及答案汇总分析(3)
- java基础问题--Java 中的 String 为什么是不可变的?
- Java基础-内部类-为什么局部和匿名内部类只能访问局部final变量
- 一个计算机专业学生几年的编程经验汇总 (该系列一共 11 篇,看完之后,java 基础绝对有不小的提升!)
- Java基础问题:static方法中为什么不能使用非static的方法或变量
- JAVA并发多线程的面试问题及答案(基础部分)