亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

無法獲得公共類 GUI 擴展 Frame 實現 ActionListener 工作

無法獲得公共類 GUI 擴展 Frame 實現 ActionListener 工作

眼眸繁星 2022-07-27 09:48:14
我的代碼片段的屏幕截圖import java.awt.*; import java.awt.event.*;import java.awt.image.BufferedImage; import java.io.*;import javax.imageio.ImageIO; import javax.swing.*;public class GUI extends Frame implements ActionListener{ private TextField buy = new TextField(30); private Button appl; public GUI(){    super("GUI");    setLayout(new FlowLayout());    setSize(400,150);    setTitle("Stock Market Exchange");    setVisible(true);    aapl = new Button("Buy AAPL share");    add(aapl);    aapl.setEnabled(true);    aapl.setBounds(35,6,112,36);    aapl.setBackground(new Color(214,217,223));    aapl.setForeground(new Color(0,0,0));    aapl.addActionListener(new ActionListener(){        public void actionPerformed(ActionEvent evt){            createAAPLshare();        }    });    add(buy);    aapl.setVisible(true);}“公共類 GUI 擴展 Frame 實現 ActionListener” - 不斷返回錯誤,因為 GUI 不是抽象的,并且無法覆蓋 java.awt.event.ActionListener 中的 actionPerformed(java.awt.event.ActionEvent)。但我似乎無法弄清楚這個錯誤在哪里以及為什么會不斷返回。我試圖搜索各種方法來修復它,但仍然存在編譯器錯誤。我錯過了什么?
查看完整描述

2 回答

?
MYYA

TA貢獻1868條經驗 獲得超4個贊

您完全錯過了錯誤告訴您的內容:該actionPerformed()方法的具體實現(因為您實現了 ActionListener 接口)

在您的 GUI 類中提供此方法的實現(并在您的 GUI 類的一個或多個組件中相應地使用它),或者implements ActionListener如果您不需要它,則從您的類中刪除該部分

對于前者,在你的類中添加方法的實現:

public void actionPerformed(ActionEvent evt){
            createAAPLshare();}

然后在相關部分:

aapl.addActionListener(this);

對于后者,只需保留您的代碼,但從implements ActionListener您的類簽名中刪除

無論哪種方式都應該工作,你選擇


查看完整回答
反對 回復 2022-07-27
?
瀟瀟雨雨

TA貢獻1833條經驗 獲得超4個贊

這只是意味著您需要為 actionPerformed() 提供一個實現。ActionListener 是一個接口,所以如果你在一個類中實現它,你應該在你的類的某個地方填寫接口中的任何方法。此頁面應該為您提供更多信息:https ://docs.oracle.com/javase/tutorial/uiswing/events/actionlistener.html


查看完整回答
反對 回復 2022-07-27
  • 2 回答
  • 0 關注
  • 122 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號