java从导入的子类访问父方法

时间:2013-08-14 22:04:09

标签: java netbeans jframe

是一个java新手。从网上学习。我的代码存在问题。 我有三节课。 mainclass.java,oneclass.java,twoclass.java。 我在mainclass中导入了一个类和两个类。

oneclass有一个“下一步”按钮。我想要做的是下一个btn上的onActionEvent,从mainclass调用一个函数,它将oneclass的可见性设置为false,将twoclass设置为true。 我发布了整个代码 mainclass.java

    package com.mainclass;
    import com.twoframe.twojframes;
    import com.secondframe.secondjframe;

public class MainClass {
    private static com.secondframe.twoclass panel2;
    private static com.twoframe.oneclass panel1;


    private static void openPanel1(){
      panel1 = new com.twoframe.oneclass();
      panel1.setVisible(true);
    }
    public static void toggleVisibility(){
        System.out.println("called from child");
        panel2 = new com.secondframe.twoclass();
        panel2.setVisible(true);
        panel1.setVisible(false);
    }
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                openPanel1();
            }
        });

    }
}

oneclass.java

jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton1ActionPerformed(evt);
            }
        });
     private void jButton1ActionPerformed(java.awt.event.ActionEvent evt)
        {                                         
            // TODO add your handling code here:
           //Basically something like -- mainclass.toggleVisibility();

        } 

谢谢。

1 个答案:

答案 0 :(得分:0)

假设“父”是您正在扩展的类,并且您调用的方法不是静态的,以下应该可以解决这个问题:

super.toggleVisibility();

如果它是静态方法 - 它甚至更简单:

ParentClassName.toggleVisibility();