有人可以Activator.CreateInstance()详细解释目的吗?
可能重复:
从Java中的变量创建新类
我有一个字符串
String className = "DummyClass"
Run Code Online (Sandbox Code Playgroud)
现在我想创建一个类对象,其中类名是className.就像这样
Object className = new className() // I know it's not possible.
Run Code Online (Sandbox Code Playgroud)
我想知道怎么做...
我有一项需要完成的任务,但我真的被卡住了.
基本上,我有一些像这样的继承关系:
动物
宠物WildAnimal
鸟猫狗鱼||蛇鹰
动物是宠物和野生动物的父母.宠物是鸟,猫,狗,鱼的父母.WildAnimal是Snake and Eagle的父母.
该任务要求我从"input.txt"文件中读取输入并创建Animal对象.
"input.txt"就像:
猕猴桃鸟查理鹰芒果鱼辣椒狗角猫tweety鸟鲍勃狗ziggy蛇
我可以得到所有的名字,但我无法弄清楚如何理解每个名字代表哪种对象.
这是主要方法:
public static void main(String[] args) throws IOException {
String s ="";
int nameCounter = 0;
Animal[] animals = new Animal[100];
try{
Scanner input = new Scanner(Paths.get("input.txt"));
while (input.hasNext()) {
s = input.next();
Animal animal = new Animal(s);
animals[nameCounter] = animal;
nameCounter += 2;
}
}catch(Exception e){
e.printStackTrace();
}
}
Run Code Online (Sandbox Code Playgroud)
这是动物类:
public class Animal {
private String name;
private int numberOfLegs;
private int numberOfWings;
public Animal(String name){
this.name …Run Code Online (Sandbox Code Playgroud) 我正在检索String变量Database并存储在变量中.
String name = "Peter" ---- >(retrieved from the database)
Run Code Online (Sandbox Code Playgroud)
我已经有一个叫做的课了Peter.我需要使用检索到的变量初始化类name.
假设,无论String从数据库中检索到什么,我都在我的包中为它定义了一个类......
有没有办法Object为String我从中检索Database?