Код: Выделить всё
package mypackage2;
import mypackage.C;
import java.lang.reflect.*;
public class InheritsC{
public static void main(String[] args){
try{
//creates instance
Object obj = new InheritsC();
Class className = Class.forName("mypackage2.InheritsC");
//sets params array
Class[] params = new Class[1];
params[0] = Class.forName(java.lang.String);
//gets method
Method m = className.getSuperClass().getDeclaredMethod("M, params");
//sets args array
Object[] arglist = new Object[1];
arglist[0] = new String("Java is Fun!");
//makes method accessible and executes
m.setAccessible(true);
m.invoke(obj, arglist);
} catch (Exception e){System.out.println(e.toString());}
}
}
Я пробовал несколько вариантов этого кода, но во всех случаях файл не записывается. Никаких исключений не создается, но, похоже, ничего не происходит. Я не знаю, почему это происходит, и буду признателен за любой совет.
Подробнее здесь: https://stackoverflow.com/questions/792 ... reflection