我正在尝试构建一个动态的gui。反思:创建一个实例-java
我有以下类:
Public abstract class Property
String ip1;
int port;
和很多从这个类创建的子类,例如有以下两种:
public class PropertyDns extends Property
string ip2;
int port2;
Public class PropretyNetBios extends Property
long time;
目标: 用户选择的一个子属性,然后我想出示他需要填写的字段才能创建实例。 例如:如果他被选中PropertyDns
我会出现: “ip1:____ port1:______ ip2:_______ port2:______” 当他完成时,他会按“ok”然后我想创建一个这样的实例与他选择的价值类别。
有什么办法可以做到吗?
我设法使用反射来呈现的字段:
Field[] s1=p.getClass().getSuperclass().getDeclaredFields();
Field[] s=p.getClass().getDeclaredFields();
for (int i = 0; i < s.length; i++) {
ans[i]=s[i].getName();
}
,但我认为是做得不好。
请发表您的实际代码(格式化)。你在这里有什么不会编译,很难阅读。 – azurefrog
您是否事先知道用户可以选择的所有子类? –
@ ErickG.Hagstrom No :( –