2015-11-18 3 views
-2

Я полагаю, что это имеет какое-то отношение к отражению, но в любом случае,Можно ли это достичь?

Я хочу, чтобы пользователь во время выполнения просил пользователя ввести имя допустимого класса Java (скажем, сканера или строки), а затем создать объект, соответствующий этому классу.

Могу ли я это сделать? Если да, то как?

+2

** Да **. Но что вы хотите с ним сделать, как только вы его создали? –

+0

Я просто хочу знать, как это сделать. Любопытно. –

+0

Вы можете сделать это с помощью оператора switch. Или оператор if else. Имеет некоторое значение, считанное со стандартного, в соответствии с каким-либо вызовом конструктора. – bpgeck

ответ

0

Вы можете сделать:

Class.forName(yourClassName).newInstance(); 

Если класс имеет определенный конструктор (принимая строку, например), вы также можете сделать что-то вроде:

Class.forName(yourClassName).getDeclaredConstructor(String.class).newInstance("somestring"); 
Смежные вопросы