I cannot use getConstructor() for a constructor without parameters. I keep getting
java.lang.NoSuchMethodException: classname.<init>()
here is the code
import java.lang.reflect.*; class asa implements InfoInterface{ public String getClassName() { return("jeden"); } public String getMethodName() { return("metoda"); } public String getArgument() { return("krzyk"); } } class jeden { jeden() { System.out.println("konstruktor"); } public void Metoda(String s) { System.out.println(s); } } class Start { public static void main( String[] argv ) { String klasa, metoda, argument; InfoInterface d; if ( argv.length == 0 ) { System.err.println( "Uzycie programu: java Start nazwa_klasy nazwa_klasy2..."); return; } try { for(int x=0;x<argv.length;x++) { Class c = Class.forName( argv[x] ); d=(InfoInterface)c.newInstance(); klasa = d.getClassName(); metoda = d.getMethodName(); argument = d.getArgument(); Class<?> o = Class.forName(klasa);
o.newInstance (); prints "constructor" without any problems
source share