2016-06-07 73 views
-2

我正在用Swing创建一个GUI。首先我实例化类User,然后初始化它。然后,根据Action Listeners我调用这个类的方法。问题是我在我的类GUI中有不同的功能,当我调用类的方法时,我必须使用在开始时创建的实例。问题是我无法将User类实例设置为我的类GUI的属性,因为它不是静态的。使用类实例作为属性

public class User{ 
    int id; 
    public User(){ 
     id = 5; 
    } 
    public void setId(int a){ 
     id = a; 
    } 
} 
public class Gui{ 
    User u; 
    public static void main(String[] args){ 
     u = new User(); 
     //////////////// 

     //////////////// 
     doStuff(); 
    } 
    public void doStuff() { 
     u.setId(1); 
    } 
}  

我该怎么做这样的事情?

+1

提示:你开始做...少。理解静态和非静态之间的区别(以及哪一个用于什么目的)是非常基本的东西。严重:如果你不知道这样的事情......那么不要进入UI应用程序编程。你应该学会走路;而不是试图学习如何与3个球玩耍,同时试图学习骑独轮车。含义:专注于java的基础语言。然后,继续前进。 – GhostCat

+0

谢谢,我想用Java思考。 – Fylux

+0

我只是说:如果你一次只关注**一个**方面,思考会更容易。不是多个。 GUI编程本身是一个高级话题。 – GhostCat

回答

1

在您的main函数中,您应该创建一个Gui类的(公共)实例。
然后做任何你想要的,指那个实例。