Java里的String类为什么是final的

Posted 系统攻城狮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java里的String类为什么是final的相关的知识,希望对你有一定的参考价值。

今天在看《图解设计模式》,里面出了一个问题“String类用final修饰,导致它无法被继承(扩展),这样做违反了开闭原则,这么做有什么正当理由?”

答案是效率安全性 

首先是效率,由于String类它基本上是最频繁使用的几个类之一,如果使用的不好,会出现很明显的性能问题。所以干脆做成final类的。可以在JVM里做很多优化(比如放在栈中重用),类似的还有StringBuilder,

string  [str??]  详细X
基本翻译
n. 线,细绳;一串,一行
vt. 扎,缚;使排成一列,串起;伸展,拉直
vi. 连成一串;排成一列
n. (String)人名;(德)施特林;(瑞典)斯特林
网络释义
String: 字符串
string quartet: 弦乐四重奏

以上是关于Java里的String类为什么是final的的主要内容,如果未能解决你的问题,请参考以下文章

在java中String类为什么要设计成final?

java String类为什么是final的

Java里的final作用是啥?意思有是啥?大虾解决下

Java中String为什么是final

Java学习笔记3.6.1 final关键字 - final修饰类

Java里的final作用是啥?意思有是啥?大虾解决下