【发布时间】:2014-06-02 23:59:48
【问题描述】:
试图通过构造函数更好地理解 Swing 和 AWT,但现在我有一个关于构造函数的问题。
基于布尔值 maximize 是否为 true 我想设置一个具有相同值的新公共布尔变量。问题是我可能需要多个 JFrame,但如果为真,我不能创建相同的公共变量名称。 如何使用基于动态字符串的名称实例化布尔值
public void setJframe(JFrame name, boolean maximize,) {
if (maximize == true){
name.setExtendedState(name.getExtendedState()|JFrame.MAXIMIZED_BOTH);
}
else {
name.setLocationRelativeTo(null);
}
}
补充说明
在 if 部分,它会类似于如果它是远程可能的。 括号是用来表示整个变量名和在反射中与字符串混合的
public boolean (getField(name) + "Max") = maximize;
我知道编译器会以某种方式做事,如果我放在这里的内容没有反映出这一点,那就别把我活活吃掉。
【问题讨论】:
-
您不能这样做,因为 Java 不允许动态变量名,但更重要的是,您不想这样做,因为变量名几乎没有那么重要正如你认为的那样。重要的是参考。
标签: java variables reflection compiler-construction constructor