String类为什么是final的?
String类为什么是final的?
**被final修饰的类不能被继承,即它不能拥有自己的子类;
被final修饰的方法不能被重写;
final修饰的变量,无论是类属性、对象属性、形参还是局部变量,都需要进行初始化操作。
类属性可以理解为一个将一个类作为另一个类的属性
主要是为了”安全性“和”效率“的缘故,因为:
1、由于String类不能被继承,所以就不会没修改,这就避免了因为继承引起的安全隐患;
2、String类在程序中出现的频率比较高,如果为了避免安全隐患,在它每次出现时都用final来修饰,这无疑会降低程序的执行效率,所以干脆直接将其设为final一提高效率;