建议不要这样用,一般来说你不可能把所有的 class 类加密吧,没有那种必要,只要若干核心类加密就可以了,那么只需要使用 Class 类的 forName 方法,里面制定你的 classloader 就可以了
解决方案 »
- 有人用过新浪微博oauth第3方授权么????????????????????????????
- 急!eclipse3.3.1 无法运行tomcat?十分急!!!
- 使用DispatchAcion的一个小问题
- 关于hibernate的问题???
- JSF里的Referenced bean和Managed Bean有什么区别啊,前者要怎么用啊
- struts+hibernate配置问题
- 关于spring+hibernate的问题,请求各位帮忙看看,谢谢
- 我的jb9的configure server里怎么没有jBoss?急!
- 有谁真正做过J2EE企业级应用开发,请进!
- 打算做类似WEBLOGIC左栏的树形导航栏,求思路
- (给200分,不够我再加)我用hibernate时,产生错误:Failed to lazily initialize a collection
- 请问大家在java中return,break,exit(i)有什么区别?
其实就是和默认的loader一样用
----------------------
假定继承ClassLoader的类名为MyClass,假定你解密的类package为“my.test.MyTest”,并且假定MyTest里有个方法是public static void doMethod(String s){System.out.println(s);}
//开始:
MyClass mc=new MyClass();
byte[] code=...//得到解密后的MyTest.class
Class cls = mc.defineClass("my.test.MyTest", code, 0, code.length);
String s="随便写....";
java.lang.reflect.Method m=cls.getMethod("doMethod",new Class[]{s.getClass()});
m.invoke(null,new Object[]{s});//打印s