JAVA中类名不是抽象的,并且未覆盖抽象方法
importjava.awt.event.*;importjavax.swing.*;importjava.awt.*;publicclasshelloextendsJF...
import java.awt.event.*;
import javax.swing.*;
import java.awt.*;
public class hello extends JFrame implements KeyListener,ActionListener{
JTextField keytext = new JTextField(80);
JLabel keylabel = new JLabel("press any key: ");
public hello(){
super("hello");
setSize(350,100);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
FlowLayout layout = new FlowLayout();
setLayout(layout);
keytext.addKeyListener(this);
add(keytext);
add(keylabel);
setVisible(true);
}
public void keyRelease(KeyEvent evt){
char ch = evt.getKeyChar();
keylabel.setText(""+ch);
}
public static void main(String[] argc){
hello test = new hello();
}
}
为什么它会说hello不是抽象类,并且未覆盖java.awt.event.KeyListener中的抽象方法keyRelease; 展开
import javax.swing.*;
import java.awt.*;
public class hello extends JFrame implements KeyListener,ActionListener{
JTextField keytext = new JTextField(80);
JLabel keylabel = new JLabel("press any key: ");
public hello(){
super("hello");
setSize(350,100);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
FlowLayout layout = new FlowLayout();
setLayout(layout);
keytext.addKeyListener(this);
add(keytext);
add(keylabel);
setVisible(true);
}
public void keyRelease(KeyEvent evt){
char ch = evt.getKeyChar();
keylabel.setText(""+ch);
}
public static void main(String[] argc){
hello test = new hello();
}
}
为什么它会说hello不是抽象类,并且未覆盖java.awt.event.KeyListener中的抽象方法keyRelease; 展开
5个回答
展开全部
应该是KeyListener接口中的方法没有全部实现,类继承接口,一定要实现接口中的所有方法,不需要的方法空实现就好。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我来晚了。
这个是面向对象里的特性,如果你要想实现一个接口,那么你必需实现这个接口中的所有方法。
这个是面向对象里的特性,如果你要想实现一个接口,那么你必需实现这个接口中的所有方法。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼上的错了吧
java中
可以只实现一部分方法 但此类必须是抽象类(类方法必须是public)
你在class那加个abstract看看
java中
可以只实现一部分方法 但此类必须是抽象类(类方法必须是public)
你在class那加个abstract看看
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
实现某个接口,就要实现这个接口所有的方法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询