从java中的main方法调用抽象GUI类

时间:2015-08-11 10:27:59

标签: java user-interface

我正在尝试从主类(作为另一个类)查看我的GUI,但我一直在收到错误。 GUI类编译正常,但主类“无法实例化类型RecommenderGUI”。以下是GUI类的一些代码

public abstract class RecommenderGUI extends JFrame {

private static final Dimension MAX_BTN_DIM = new Dimension(100, 1);
protected static final int DESCDISPLAYLENGTH = 40;
protected final int FRAME_WIDTH = 456;
protected final int FRAME_HEIGHT = 683;
/**
 * Current user
 */
protected JLabel curUserLabel = new JLabel("Set current user id");
protected JTextField curUserTextField;
protected JButton curUserSetBtn = new JButton();
protected JLabel curUserStatusLabel;
/**
 * Add item
 */
protected JComboBox addItemList;
protected JComboBox addRatingList;
protected JButton addItemBtn;
/**
 * Get recommendations
 */

这是我的主要方法:

public class RecommenderRunner {

/**
 * @param args
 */
public static void main(String[] args) {

    RecommenderGUI gui = new RecommenderGUI();
     gui.setVisible(true);
}

}

它似乎没有识别我的GUI类。任何帮助都感激不尽。问候。

1 个答案:

答案 0 :(得分:0)

在尝试创建gui之前,先了解该语言的基础知识。你无法实例化它,因为它是一个抽象类。

这意味着它可能(不必要)包含抽象(未实现)方法。 您需要创建一个子类,以便能够通过该子类(或匿名内部类)实例化它。

但是,最有可能的是,您只需要从类签名中删除'abstract'关键字。基于您展示的小代码,我无法确定,但似乎该类对我来说不应该是抽象的。