加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 如何调用这个类?

发布时间:2020-12-15 04:19:54 所属栏目:Java 来源:网络整理
导读:我有我的主类调用一个名为MainFrame的自定义JFrame类 public class App {public static MainFrame mf;public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() { public void run() { MainFrame mf = new MainFrame(Workers);
我有我的主类调用一个名为MainFrame的自定义JFrame类

public class App {

public static MainFrame mf;

public static void main(String[] args) {

    SwingUtilities.invokeLater(new Runnable() {
        public void run() {
             MainFrame mf = new MainFrame(Workers); //jFrame
        }   
    }); 
}

public static void foo(String s){ //invoked by another class
    mf.validate();

}       
}

在run()外部调用mf的方法返回null值.如何在MainFrame中调用方法?

解决方法

您只需要在方法范围之外声明您的类,以便以后使用它.

MainFrame mf;

SwingUtilities.invokeLater(new Runnable() {
    public void run() {
        mf  = new MainFrame(Workers); //jFrame
    }   
});

它发生的原因是一个叫做范围的东西.您的变量仅在声明它的括号中存活.之后,垃圾收集器会自动删除它.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读