-1
Предположим, что имя класса является строкой.Создавать объект из имени класса в виде строки
String myClass = "com.whatever.MyClass";
Как я могу создать экземпляр этого класса с помощью отражения и есть объект типа MyClass
и не Object
, без использования кода, как это:
MyClass myObj = MyClass.class.cast(instance);
В основном я хочу, чтобы преобразовать экземпляр Object
в MyClass
без использования MyClass
в коде и просто зная имя класса как строку.
Вы не можете. Чтобы присвоить ему ссылку типа «MyClass», вам нужно знать, что такое «MyClass» во время компиляции. –
И единственный способ сделать это - http://stackoverflow.com/questions/2215843/using-reflection-in-java-to-create-a-new-instance-with-the-reference-variable-ty – Tunaki
Вы могли бы посмотреть на заводскую модель, помещая их в какой-то контейнер с индексом строки и вызывая их. Вот как это делается на C++, но я не знаю о Java. –