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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 榨菜 高级黑马   /  2014-4-3 13:11  /  622 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

我根据视频里面的写了程序。  我复写了loadClass方法。  fineClass是用视频里面的。
  1. protected Class<?> loadClass(String name, boolean resolve)
  2.             throws ClassNotFoundException
  3.         {
  4.                
  5.                         if("System".equals(name)){
  6.                                 Class c = findLoadedClass("System."+"class");    //如果传进来的是自己写的System  就调用自己写的findClass
  7.                                
  8.                                 if(c == null){

  9.                                         c =findClass(name);    //这里就调用自己写的findClass

  10.                     return c;
  11.                                 }else{
  12.                                         return c;
  13.                                 }
  14.                         }else{
  15.                                 return super.loadClass(name, resolve);   //对于其他的类 就给父类加载器加载。
  16.                         }
  17.            
  18.         }
复制代码

运行后的结果是:java.lang.SecurityException: Prohibited package name: java.lang
提示禁止使用包java.lang

有什么办法实现调用自己的java.lang.System吗?






评分

参与人数 1技术分 +1 收起 理由
菜小徐 + 1

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马