编译此程序时遇到了一些麻烦。我得到的错误信息是" Forside"抽象无法实例化"。我有麻烦解决这个问题。
这是我的代码,并提前感谢你。
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public abstract class Forside implements ActionListener {
private Forside() {
JFrame jfrm = new JFrame("BasisBaren - Sudentersamfundet");
jfrm.setLayout(new FlowLayout());
jfrm.setSize(1500, 1000);
jfrm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JButton jbtnOel = new JButton("OEL");
JButton jbtnAndreDrikkevarer = new JButton("Andre Drikkevarer");
JButton jbtnTender = new JButton("Tender");
JButton jbtnSnacks = new JButton("Snacks");
jbtnOel.addActionListener(this);
jbtnAndreDrikkevarer.addActionListener(this);
jbtnTender.addActionListener(this);
jbtnSnacks.addActionListener(this);
jfrm.add(jbtnOel);
jfrm.add(jbtnAndreDrikkevarer);
jfrm.add(jbtnTender);
jfrm.add(jbtnSnacks);
}
public static void main (String args[]) {
SwingUtilities.invokeLater (Forside::new);
}
}
答案 0 :(得分:1)
无法实例化抽象类。您需要一个用于实例化的具体类,可以通过删除abstract
修饰符或创建新的子类来完成。
抽象类是一个声明为abstract的类 - 它可能包含也可能不包含抽象方法。抽象类不能被实例化,但它们可以被子类化。
阅读文件here。
答案 1 :(得分:0)
您必须从类声明中删除abstract
修饰符才能实例化它。
答案 2 :(得分:0)
消息说明了一切:您无法实例化抽象类。您要么要从您的班级定义中删除 abstract
,要么必须创建另一个类来扩展您的抽象类以防万一你觉得你需要不同版本的" Forside"类:
public class ConcreteForside extends Forside {
}