黑马程序员技术交流社区

标题: String这个类型的class为何定义成final? [打印本页]

作者: Akm    时间: 2012-2-11 11:29
标题: String这个类型的class为何定义成final?
String这个类型的class为何定义成final?
作者: 黑马唐浩    时间: 2012-2-11 11:44
主要是为了“效率” 和 “安全性” 的缘故。若 String允许被继承, 由于它的高度被使用率, 可能会降低程序的性能,所以String被定义成final。
作者: 彭坤    时间: 2012-2-11 11:59

主要是为了“效率” 和 “安全性” 的缘故。若 String允许被继承, 由于它的高度被使用率, 可能会降低程序的性能,所以String被定义成final。

String和其他基本类型不同,他是个对象类型.既然是对象类型,如果是在静态方法下是必须调用静态方法或值的,如果是非静态的方法,就必须要实例化.
main函数是个static的.所以String要能像其他的基本类型一样直接被调用.这也是为什么在main函数下使用String类型不会报告错误的原因..

作者: 何洪森    时间: 2012-2-11 14:13
String类型频繁使用,为了方便被定义成final类型,因为String类被定义的已经很完善,即
不需要拓展其功能,故不能被子类继承。而且String创建对象是可以不用new的,这个跟基本
数据类型赋值很相似。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2