对话式情景剖析,String被Final修饰的真正原因!一篇足矣
发布时间:2019-07-16 07:16:18 所属栏目:优化 来源:佚名
导读:面试官:你好,能看得清下面这张图吗? 我:可以的。 面试官:恩,好的。呃,你能不能说一说为什么String要用final修饰? 我:final意味着不能被继承或者被重写,String类用final修饰是Java的设计人员不希望客户端程序员继承String类,并有可能改写String类
2、final class 的final 要抓住几个关键点是:类上的final用于限制产生子类(或限制多态/或限制行为的变化)。字符串的使用是频繁的,如果通过多态的方式使用String子类对象及其方法将会一定程度上导致性能下降(多态的实现原理:底层的虚函数表),同时String中的方法也可能面临被Override重写的危险导致程序语义不安全、甚至是逻辑错误,与Java自始至终强调的安全性理念相违背。
(编辑:开发网_开封站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |