gpt4 book ai didi

java - 从变量创建和使用类

转载 作者:塔克拉玛干 更新时间:2023-11-01 23:07:24 24 4
gpt4 key购买 nike

这是对这个问题的跟进:Create new class from a Variable in Java

我想加载一个基于有效字符串变量的类,但我无法调用它的任何方法。

我有多个类都实现了相同的接口(interface),例如

class Foo implements Bar {
private String username = null;

public String getUsername() {
return this.username;
}
}

现在我想在不知道它是哪个类的情况下实例化该类,然后对其调用 getUsername()

String a = "Foo";
Class<?> c = Class.forName(a);
Object object = c.newInstance();
System.out.println(object.getUsername());

这导致

Error:(74, 15) java: cannot find symbol

symbol: method getUser()

location: variable object of type java.lang.Object

如果我把它投给类

Foo foo = (Foo) object;

它可以工作,但我不能这样做,因为我不知道类(class)的名字。

有没有办法做到这一点,或者这完全是一种虚假的尝试?

最佳答案

您应该将其转换为您的界面:Bar object = (Bar) c.newInstance()

关于java - 从变量创建和使用类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37300830/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com