实现继承抽象方法“Actionlistener”

时间:2015-07-15 23:00:02

标签: java actionlistener

大家好,我遇到了一个问题,“类型FahrzeugFrame必须实现继承的抽象方法ActionListener.actionPerformed(ActionEvent)”。 这只是学校的家庭作业,我已经有了答案。问题是我试图制作我的教授所写的相同代码的版本,但它并没有贬低。

我的代码看起来像这样。

public class FahrzeugFrame extends JFrame implements ActionListener {
private JButton erzeugenButton;
private JButton loeschenButton;
private JButton beschleunigenButton;
private JTextArea ausgabeBereich;
private Fahrzeug aktFahrzeug;

public FahrzeugFrame(){
    this.setTitle("Fahrzeug");
    this.setSize(800,300);
    this.erzeugenButton = new JButton("Erzeugen");
    this.loeschenButton = new JButton("Loeschen");
    this.beschleunigenButton= new JButton("Beschleunigen");
    this.ausgabeBereich = new JTextArea(10,200);

    JPanel buttonPanel = new JPanel();
    buttonPanel.add(this.erzeugenButton);
    buttonPanel.add(this.loeschenButton);
    buttonPanel.add(this.beschleunigenButton);

    Container contentPane = this.getContentPane();
    contentPane.add(buttonPanel);
    contentPane.add(ausgabeBereich);

    this.erzeugenButton.addActionListener(this);
    this.loeschenButton.addActionListener(this);
    this.beschleunigenButton.addActionListener(this);
    this.setDefaultCloseOperation(EXIT_ON_CLOSE);

    }
public void actionPerformed(ActionEvent e){
    Object source = e.getSource();
    if (source == this.erzeugenButton) {
        this.erzeugen();

    }
    if (source == this.loeschenButton) {
        this.loeschen();

    }
    if (source == this.beschleunigenButton){
        this.beschleunigen();
    }

}

private void erzeugen {
    if (this.aktFahrzeug != null){
        this.ausgabeBereich.setText("es existiert bereits ein Fahrzeug, erst mal löschen");
    }
    else {
        String einlesenX = JOptionPane.showInputDialog(" X : ");
        int x = Integer.parseInt(einlesenX);
        String einlesenY = JOptionPane.showInputDialog(" Y : ");
        int y = Integer.parseInt(einlesenY);
        String einlesenRad = JOptionPane.showInputDialog(" Anzahl der Räder");
        int anzahlRader = Integer.parseInt(einlesenRad);
        String einlesenGewicht = JOptionPane.showInputDialog("Gewicht des Fahrzeugs");
        double gewicht = Double.parseDouble(einlesenGewicht);
        String einlesenGeschwindigkeit = JOptionPane.showInputDialog("Geschwindigkeit");
        double geschwindigkeit = Double.parseDouble(einlesenGeschwindigkeit);
        this.aktFahrzeug = new Fahrzeug(x ,  y , anzahlRader,  gewicht, geschwindigkeit);
        this.ausgabeBereich.setText("Folgendes Objekt wurde erzeugt : " + this.aktFahrzeug + " mit der Geschwindigkeit " + this.aktFahrzeug.getAktuelleGeschwindigkeit());

    }

}
private void loeschen {
    if (this.aktFahrzeug == null) {
        this.ausgabeBereich.setText("es existiert kein Fahrzeug");

    }
    else {
        this.aktFahrzeug = null;
        this.ausgabeBereich.setText("gelöscht");

    }
}
private void beschleunigen {
    String einlesenBeschleunigung = JOptionPane.showInputDialog("Beschleunigung ?");
    double beschleunigung = Double.parseDouble(einlesenBeschleunigung);
    this.aktFahrzeug.beschleunigen(beschleunigung);
    this.ausgabeBereich.setText("Aktuelle Geschwindigkeit : " + this.aktFahrzeug.getAktuelleGeschwindigkeit());
}

}

0 个答案:

没有答案