java中的会话变量
我是Java新手,这就是为什么我的问题听起来奇怪而愚蠢的原因。但无论如何,我有几个扩展JFrame的forms类。我想要的是有一个变量,可以以各种形式读写。当我创建一个接口并在我的表单中实现它时,接口的所有变量都可以在表单中访问,但只能用于读取,我不能为它们分配新的值java中的会话变量,java,session,global-variables,Java,Session,Global Variables,我是Java新手,这就是为什么我的问题听起来奇怪而愚蠢的原因。但无论如何,我有几个扩展JFrame的forms类。我想要的是有一个变量,可以以各种形式读写。当我创建一个接口并在我的表单中实现它时,接口的所有变量都可以在表单中访问,但只能用于读取,我不能为它们分配新的值 问:在java中有可能做到这一点吗?如果是,那么如何?接口没有变量,它们只有最终成员,即常量。你可以用一个类替换接口,然后你就可以访问感兴趣的类成员。听起来你要么想要一个单例,要么想要一个具有一堆静态属性的类 要记住的主要一点是,
问:在java中有可能做到这一点吗?如果是,那么如何?接口没有变量,它们只有最终成员,即常量。你可以用一个类替换接口,然后你就可以访问感兴趣的类成员。听起来你要么想要一个单例,要么想要一个具有一堆静态属性的类
要记住的主要一点是,如果有多个线程访问全局属性,则需要同步访问。在Java接口中,只有最终成员。这意味着这些成员是最终的。很可能您无法扩展类,因为表单类正在扩展JFrame。这里使用的一个选项是拥有一个中间继承类。看看下面的例子
class intermediateClass extends JFrame{
//some code if any
String name;
//Getter/Setter
}
class yourForm extends intermediateClass{
public yourForm(){
setName("Ddd");
System.out.println(getName());
}
}
但我个人不会推荐它。我建议您使用另一个类,特别是您的类和Main方法来保存这些变量。例如,我使用一个名为Runner的类来执行Java应用程序-
class Runner{
String name;
public static void main(String[] args) {
setName("Dchan");
System.out.println(getName());
}
//getter/setter
}
希望这有帮助没有更多信息,我的玻璃球说在interface@vickirk. 如果你能给出关于你的观点的简短代码,我非常感谢。但是我的类扩展了JFrame,不能扩展你所说的第二个类,如果我没有弄错的话。使用委托,只需从类中调用委托方法即可。