J2SE问题The type MyChessFrame must implement the inherited abstract 疑惑中~~~求高手相助

问题描述

packageorg.liky.game.test;importjava.io.*;importjava.awt.*;importjava.awt.event.*;importjava.awt.image.BufferedImage;importjavax.imageio.ImageIO;importjavax.swing.JFrame;publicclassMyChessFrameextendsJFrameimplementsMouseListener{//privatestaticfinallongserialVersionUID=1L;publicMyChessFrame(){this.setTitle("五子");this.setSize(200,100);this.setResizable(false);//设置窗体是否可以改变大小this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置窗体关闭方式,关闭窗体时同时结束程序intwidth=Toolkit.getDefaultToolkit().getScreenSize().width;intheight=Toolkit.getDefaultToolkit().getScreenSize().height;this.setLocation((width-200)/2,(height-100)/2);//设置窗体初始显示位置this.addMouseListener(this);this.setVisible(true);//窗体是否显示}publicvoidpaint(Graphicsg){//g.drawString("五子棋游戏",20,40);//绘制字符串//g.drawOval(20,40,40,50);//g.fillOval(20,40,40,40);//g.drawLine(20,40,80,40);//g.drawRect(20,40,40,20);//g.fillRect(80,40,40,20);BufferedImageimage=null;try{image=ImageIO.read(newFile("E:/桌面/11200001.jpg"));}catch(IOExceptione){e.printStackTrace();}g.drawImage(image,0,0,this);//g.drawRect(20,40,40,20);g.setColor(Color.blue);g.setFont(newFont("宋体",40,40));g.fillRect(80,40,40,20);g.drawString("五子棋游戏",20,100);}/*publicvoidmouseClicked(MouseEvente){System.out.println("鼠标点击");JOptionPane.showMessageDialog(this,"鼠标点击");}*/}

packageorg.liky.game.test;importjavax.swing.*;importjava.awt.*;publicclassTest{publicstaticvoidmain(String[]args){MyChessFramemf=newMyChessFrame();}

运行后出现这样的问题Exceptioninthread"AWT-EventQueue-0"java.lang.Error:Unresolvedcompilationproblem:ThetypeMyChessFramemustimplementtheinheritedabstractmethodMouseListener.mouseEntered(MouseEvent)atorg.liky.game.test.MyChessFrame.mouseEntered(MyChessFrame.java:10)atjava.awt.Component.processMouseEvent(UnknownSource)atjava.awt.Component.processEvent(UnknownSource)atjava.awt.Container.processEvent(UnknownSource)atjava.awt.Window.processEvent(UnknownSource)atjava.awt.Component.dispatchEventImpl(UnknownSource)atjava.awt.Container.dispatchEventImpl(UnknownSource)atjava.awt.Window.dispatchEventImpl(UnknownSource)atjava.awt.Component.dispatchEvent(UnknownSource)atjava.awt.EventQueue.dispatchEvent(UnknownSource)atjava.awt.EventDispatchThread.pumpOneEventForFilters(UnknownSource)atjava.awt.EventDispatchThread.pumpEventsForFilter(UnknownSource)atjava.awt.EventDispatchThread.pumpEventsForHierarchy(UnknownSource)atjava.awt.EventDispatchThread.pumpEvents(UnknownSource)atjava.awt.EventDispatchThread.pumpEvents(UnknownSource)atjava.awt.EventDispatchThread.run(UnknownSource)

解决方案

解决方案二:
非抽象类实现接口时要实现接口的中的所有方法,MouseListener中有5个方法都要实现(当然没有用到的可以写出来,方法体为空)。当然这样写,有些麻烦,所以可以继承MouseAdapter类,然后选择自己要是实现的方法实现!
解决方案三:
第一种解决方法,实现所有的方法。//packageorg.liky.game.test;importjava.io.*;importjava.awt.*;importjava.awt.event.*;importjava.awt.image.BufferedImage;importjavax.imageio.ImageIO;importjavax.swing.JFrame;publicclassMyChessFrameextendsJFrameimplementsMouseListener{//privatestaticfinallongserialVersionUID=1L;publicMyChessFrame(){this.setTitle("五子");this.setSize(200,100);this.setResizable(false);//设置窗体是否可以改变大小this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置窗体关闭方式,关闭窗体时同时结束程序intwidth=Toolkit.getDefaultToolkit().getScreenSize().width;intheight=Toolkit.getDefaultToolkit().getScreenSize().height;this.setLocation((width-200)/2,(height-100)/2);//设置窗体初始显示位置this.addMouseListener(this);this.setVisible(true);//窗体是否显示}publicvoidpaint(Graphicsg){//g.drawString("五子棋游戏",20,40);//绘制字符串//g.drawOval(20,40,40,50);//g.fillOval(20,40,40,40);//g.drawLine(20,40,80,40);//g.drawRect(20,40,40,20);//g.fillRect(80,40,40,20);BufferedImageimage=null;try{image=ImageIO.read(newFile("E:/桌面/11200001.jpg"));}catch(IOExceptione){e.printStackTrace();}g.drawImage(image,0,0,this);//g.drawRect(20,40,40,20);g.setColor(Color.blue);g.setFont(newFont("宋体",40,40));g.fillRect(80,40,40,20);g.drawString("五子棋游戏",20,100);}publicvoidmouseClicked(MouseEvente){//TODOAuto-generatedmethodstub}publicvoidmouseEntered(MouseEvente){//TODOAuto-generatedmethodstub}publicvoidmouseExited(MouseEvente){//TODOAuto-generatedmethodstub}publicvoidmousePressed(MouseEvente){//TODOAuto-generatedmethodstub}publicvoidmouseReleased(MouseEvente){//TODOAuto-generatedmethodstub}/**publicvoidmouseClicked(MouseEvente){System.out.println("鼠标点击");*JOptionPane.showMessageDialog(this,"鼠标点击");}*/}

解决方案四:
其实具体的这个程序上,只能有上面的一种方法,因为java中是单继承的!
解决方案五:
楼主实现MouseListener类没实现所有方法,编译器不提示错误嘛?难道楼主用记事本写的???
解决方案六:
楼上正解,如果一个类实现了一个接口,那它就要实现接口里面的所有方法。

时间: 2024-09-26 21:19:21

J2SE问题The type MyChessFrame must implement the inherited abstract 疑惑中~~~求高手相助的相关文章

struts validator后type="chain" unknown acton问题求帮忙!

问题描述 struts validator后type="chain" unknown acton问题求帮忙! 在struts.xml中配置了,saveUUser的input使用chain方式跳转到edit这个action里面, 然而还配置了saveUUser的validator的xml进行验证字段,字段验证格式错误后,跳转则显示 java.lang.RuntimeException: Invalid action class configuration that references

如何在js中获取<input type="file"> 中选择的文件的大小?

问题描述 如何在js中获取<input type="file"> 中选择的文件的大小? 要限制用户上传文件大小,用后台判断的话就会导致刷新页面,所以只能放到前台来做了. 这是网上看到的一个方法,我试了试不能用 var f = document.getElementById("f").files; ".files"这里在Js中无法编译啊.. 解决方案 页面中 js 脚本哪来的"无法编译"? 这样是没错的啊. 解决方案

事件处理-新手求教大神,java事件监听问题

问题描述 新手求教大神,java事件监听问题 import java.awt.FlowLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JLabel; public class EventModelDemo implements ActionListener{ JLabel tips=new

为什么重写了父类接口的方法后,仍然报错?

问题描述 为什么重写了父类接口的方法后,仍然报错? The type Videosite must implement the inherited abstract method Subject.remove() 解决方案 你还有一个基类抽象类的抽象方法,Subject.remove(),没有实现,检查下. 解决方案二: 把子类定义为抽象类,在重写父类的方法

java-我是菜鸟,搞不定了,麻烦了

问题描述 我是菜鸟,搞不定了,麻烦了 代码如下: import java.awt.*; import java.awt.event.*; public class Jian extends Frame implements WindowListener {//上面的错误是什么?但是程序还可以运行 Jian() { this.setTitle("窗口监听"); this.addWindowListener(this); this.setBounds(100,100,300,300); t

用ant编译spring源码出现了下面的错误,求解

问题描述 用ant编译spring源码出现了下面的错误,求解 Eprojectsorg.springframework.jdbctargetclasses [s:javac] ---------- [s:javac] 1. ERROR in F:framespring-framework-3.0.5.RELEASEprojectsorg.spr ingframework.jdbcsrcmainjavaorgspringframeworkjdbcdatasourceDelegatingDa taS

android-Android 中带复选框的对话框

问题描述 Android 中带复选框的对话框 下面是关于带有复选框的对话框事例: final int DIALOG_ITEMS = 1; String data[] = { "one", "two", "three", "four" }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceStat

spinner-Spinner级联操作时实现继承的抽象方法

问题描述 Spinner级联操作时实现继承的抽象方法 Spinner sp=(Spinner)findViewById(R.id.spinner1); sp.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> arg0, View arg1,int arg2, long arg3) { String pro

an d-安卓的一个小问题 OnClickListener 在线等

问题描述 安卓的一个小问题 OnClickListener 在线等 报的错误是 The method setOnClickListener(View.OnClickListener) in the type View is not applicable for the arguments (MainActivity.mClick) ------------------------------------ The type MainActivity.mClick must implement th