В этой статье описывается простой метод реализации для отражения Java. Поделитесь этим для вашей ссылки. Конкретный метод реализации следующим образом:
Кода -код выглядит следующим образом: Пакет отражается;
Импорт java.io.file;
импортировать java.io.fileinputstream;
Импорт java.io.filenotFoundException;
Импорт java.io.fileOutputStream;
импортировать java.io.ioexception;
импортировать java.util.properties;
интерфейс плод {
Общественная абстрактная void eat ();
}
класс яблони реализует фрукты {
public void eat () {
System.out.println ("Eat Apple");
}
}
Класс оранжевый реализует фрукты {
public void eat () {
System.out.println ("Eat Orange");
}
}
класс init {
Общественные статические свойства getPro () бросает filenotfoundexception, ioexception {
Свойства Pro = новые свойства ();
Файл f = новый файл ("fruit.properties");
if (f.exists ()) {
System.out.println («Есть файл конфигурации!»);
// Читать пары клавиш значения из файла конфигурации
pro.load (new FileInputStream (f));
}еще{
System.out.println («Нет файла конфигурации!»);
Pro.SetProperty («Apple», «Reflect.Apple»);
Pro.SetProperty ("Orange", "Reflect.orange");
Pro.Store (New FileOutputStream (F), "Fruit Class");
}
вернуть профессионал;
}
}
класс фабрика {
Public Static Fruit GetInstance (String ClassName) {
фрукт f = null;
пытаться {
// Получить объект экземпляра фруктов через отражение
f = (fruit) class.forname (classname) .newinstance ();
} catch (instantiationException e) {
e.printstacktrace ();
} catch (allogalaccessexception e) {
e.printstacktrace ();
} catch (classnotfoundexception e) {
e.printstacktrace ();
}
возврат F;
}
}
открытый класс hello {
public static void main (string [] args) {
пытаться {
Properties pro = init.getPro ();
Fruit f = factory.getInstance (pro.getProperty ("Apple"));
if (f! = null) {
подвиг() ;
}
} catch (filenotFoundException e) {
// Todo Auto Generated Catch Blach
e.printstacktrace ();
} catch (ioException e) {
// Todo Auto Generated Catch Blach
e.printstacktrace ();
}
}
}
Результат:
Есть файл конфигурации!
Ешьте яблоко
Я надеюсь, что эта статья будет полезна для всех Java Programming.