Страницы

Поиск по вопросам

понедельник, 24 февраля 2020 г.

Java. Изменить название класса динамически из String

#java #android #строки


Есть некий класс Contakt.class, но названия не имеет значение так как классов много,
суть в том что вместо Contakt нужно подставить динамически другие значения.

Я получаю данные text и вставляю их в строку String q2=text; далее у меня есть код
где есть Contakt.class, но вместо Contakt нужно вставить q2, где и храняться названия
других классов. 

Получится  что-то вроде q2.class, где вместо q2 будут различные значения. 

Есть ли такая возможность на Java?
    


Ответы

Ответ 1



С помощью методов Class.forName() и newInstance() объекта Class можно динамически загружать и создавать экземпляры класса в случае, когда имя класса неизвестно до момента выполнения программы. Class c = Class.forName("com.xyz.MyClass"); Object obj = c.newInstance(); MyClass myClass = (MyClass) obj;

Ответ 2



Решения я нашел, но это всетаки не-то, что нужно было try { // returns the Class object for the class with the specified name cls = Class.forName("net.artsait.bukvitsa."+bukvica); name100 = cls.getSimpleName(); } catch(ClassNotFoundException ex) { System.out.println(ex.toString()); } Сейчас я написал новый вопрос Android. Динамически поменять названия класса

Комментариев нет:

Отправить комментарий