Java NetBeans中未更新的变量值
我在同一个包中有两个java文件。我想将一个变量的更新值从一个文件传递到另一个文件。我编写了以下代码。在class1.java中:-Java NetBeans中未更新的变量值,java,variables,netbeans,access-specifier,Java,Variables,Netbeans,Access Specifier,我在同一个包中有两个java文件。我想将一个变量的更新值从一个文件传递到另一个文件。我编写了以下代码。在class1.java中:- import javax.swing.JOptionPane; public class class1 { public static String bar = "Yes"; static int age = 26; public static void main(String[] args){ swit
import javax.swing.JOptionPane;
public class class1 {
public static String bar = "Yes";
static int age = 26;
public static void main(String[] args){
switch(age) {
case 25: bar = "world";
break;
case 26: bar = "good";
break;
case 27: bar = "very";
break;
case 30: bar = "hello";
break;
default: JOptionPane.showMessageDialog(null,"Please");
break;
}
}
}
在class2.java中:-
public class class2 {
public static void main(String[] args){
class1 second = new class1();
System.out.println(second.bar);
}
}
问题是打印的是不应打印的最终值Yes。输出应良好。请帮帮我。您创建了
class1
对象,但从未运行main
方法。这意味着代码部分永远不会运行,因此条
保持为“是”
在class2
中插入second.main(args)在打印second.bar
之前,您将获得一个良好的值
See:为什么你不能在构造函数中执行此操作?@bigbounty我不知道如何执行此操作。“你能告诉我如何使用构造函数吗?”UdayAgrawal说,我的回答比较好。谢谢你的回答。这是获得var变量值的更好的方法。虽然您的答案比之前的答案更复杂、更好,但您的答案并没有给出确切的解决方案。所以,我不会接受这个答案。谢谢你,兄弟,很抱歉。
class class1 {
public String getBar(String age){
String bar = "Yes";
switch(Integer.valueOf(age)) {
case 25: bar = "world";
break;
case 26: bar = "good";
break;
case 27: bar = "very";
break;
case 30: bar = "hello";
break;
}
return bar;
}
}
public class class2 {
public static void main(String[] args){
String age = JOptionPane.showInputDialog("Age Please");
class1 class1Obj = new class1();
System.out.println(class1Obj.getBar(age));
}
}