黑马程序员技术交流社区

标题: [打印本页]

作者: 李俊豪    时间: 2012-11-3 22:42
标题:
本帖最后由 李俊豪 于 2012-11-4 21:55 编辑

能不能自己写个类,也叫java.lang.String?

作者: 张忠豹    时间: 2012-11-3 23:10
当然可以,不过在类加载的时候,要用自己的类加载器。而且要摆脱java中的类加载机制。
java在加载类的时候,总是会将加载类的任务,往上传递给父加载器,如果父加载器还有父亲,就还往上传递。
直到BootStrap为止。而在我们程序中加载的java.lang.String是rt.jar中,是由BootStrap加载的。我们想要加载
自己的类。就得自己创建类加载器来加载。
作者: 黑马田冬雪    时间: 2012-11-3 23:46
不能 你可以模拟实现 写一个java类继承String 然后重写String本身的所有方法
作者: 杨华东    时间: 2012-11-4 01:00
本帖最后由 杨华东 于 2012-11-4 01:06 编辑

String类被final修饰后,被节育了。
string类没有子类没有娃娃。。。。
你就别想啦,除非你是java语言架构师。。。
不过呢,可以模拟,效果肯定不行哒。。。。目前来说模拟的效率都不高。。。。。因为你用的语言肯定不是“java原型语言”。。。。
如果你能用“java原型语言”进行设计,那您可就是绝对的高手了。
注意:“java原型语言”,我认为是底层的一些东西,,,就想sun公司造了一个Object(上帝)类一样,纯粹的底层人为机制造出来的。。。

上面是我的见解,有不足之处请您谅解。。。
作者: 杨华东    时间: 2012-11-4 01:02
张忠豹 发表于 2012-11-3 23:10
当然可以,不过在类加载的时候,要用自己的类加载器。而且要摆脱java中的类加载机制。
java在加载类的时候 ...

精辟                     




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