A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 任睦强 高级黑马   /  2012-3-31 12:15  /  1578 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

String这个类型的class为何定义成final?

3 个回复

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

  

回复 使用道具 举报
String具有不可变性,不能通过String对象的引用来改变String对象的内容,String类提供的那些操作String的方法只是获得了一份String的新的拷贝,而原来的String对象还在内存的某个位置保持不变,所以final关键字用在String类上的作用是不让其被继承,
回复 使用道具 举报
这个类属于最终类,
无法被继承,子类不可以复写里面的方法
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马