这里有两个问题,无论如何都无法实现自定义的java.lang.String,网上说的方法都有点问题
1. 你可以定义为java.lang.String的class,但是系统的加载器是不会加载你的类的,加载的还是JDK里面的String,所以所有的方法都是不可用的
2. 实现自己的类加载器去尝试加载自己定义的java.lang.String,
首先必须放在其他路径下,否则双亲委派机制,还是会加载自己系统的类
如果破坏双亲委派,在defineClass的时候也会抛出异常,不允许定义java.开头的类
所以无论如何也是无法实现加载自己定义的java.lang.String的
自定义类加载器也是无法实现加载java.lang.String的
原文:https://www.cnblogs.com/rogge/p/11443919.html