Class someInterface = Class.fromName(\"some.package.SomeInterface\");
How do I now create a new class that implements someInterface?>
Actually, you have to use the class name in Class.fromName() method and cast to your interface type. See if the sample below helps.
public class Main {
public static void main(String[] args) throws Exception {
Car ferrari = (Car) Class.forName("Mercedez").newInstance();
System.out.println(ferrari.getName());
}
}
interface Car {
String getName();
}
class Mercedez implements Car {
@Override
public String getName() {
return "Mercedez";
}
}
class Ferrari implements Car {
@Override
public String getName() {
return "Ferrari";
}
}