如何公开第三方课程?有办法吗?任何黑客?
基本上我扩展了我不拥有的类的功能。我可以看到源代码,但不想破解原始源并重新编译它。
感谢
答案 0 :(得分:1)
假设该类没有嵌套并且是顶级类(实际上public
带有private
构造函数),只需创建一个public
包装类并拥有方法使用private
构造函数调用该类的实例。类似的answer can be found here。
答案 1 :(得分:1)
有三种方式:
答案 2 :(得分:0)
您可以使用反射将修改器更改为public。
答案 3 :(得分:0)
使用java反射是最好的方法,虽然我认为你想要的是你想要访问一个字段或方法,这里是你如何使用java反射做到这一点:
////you main class which does the magic
package mytest;
import java.lang.reflect.Field;
import java.lang.reflect.Member;
public class Testing {
public static void main(String[] args) throws Exception {
Person c = new Person();
try {
Field f = Person.class.getDeclaredField("a");
f.setAccessible(true);
Integer i = (Integer)f.get(c);
System.out.println(i);
} catch (Exception e) {}
}
}
///here is another class for this test called person
package mytest;
class Person {
private Integer a =6;
}