都有问题小弟解决不了来求助了第一个
interface A
{
int meth1();
}
interface B
{
int meth2();
}
interface C extends A,B
{
int meth3();
}
class JC implements C
{
public int meht1()
{
return 1;
}
public int meth2()
{
return 2;
}
public int meth3()
{
return 3;
}
public int meth4()
{
return 4;
}
}
class Jkou
{
public static void main(String args[])
{
JC j=new JC();
System.out.println("实现方法meth1():"+j.meth1());
System.out.println("实现方法meth2():"+j.meth2());
System.out.println("实现方法meth3():"+j.meth3());
System.out.println("实现方法meth4():"+j.meth4());
}
}
第二个
public interface Showable
{
public static final double PI=3.14159;
public abstract void setcircle(int a,int b);
public double area();
}
class cirele
{
double r;
double x,y;
public circle()
{
x=0.0;
y=0.0;
r=0.0;
}
public circle(double x,double y,double r)
{
this.x=x;
this.y=y;
this.r=r;
System.out.print("圆点:"+"("+x+","+y+")");
}
public double area()
{
return(3.14159*r*r);
}
}
class Shocircle extends circle implements Shoabel
{
int a,b;
double x,y,r;
public Showcircle(double x,double y,double r)
{
super(x,y,r);
}
public void setcircle(int a,int b)
{
this.a=a;
this.b=b;
System.out.println("a="+a+","+"b="+b);
}
public double area()
{
return 2*super.area();
}
}
public class intertest
{
public static void main(String args[])
{
Showcircle c=new Sshowcircle(2.0,3.0,4.0);
System.out.println();
c.secircle(4,6);
System.out.println("两圆面积:"+c.area());
}
}
第三个
import java.awt.*;
import java.awt.event.*;
public class A
{
private Frame k;
private TextField tk;
public static void main(String args[])
{
Eventinner ev=new Eventinner();
ev.use();
}
public void use()
{
k=new Frame("Event Example");
k.add("North",new Button("North"));
tk=new TextField(20);
k.add("south",tk);
k.addMouseMotionListener(new Mminner());
k.addMouseListener(new Meinner());
k.setSize(100,150);
}
public class Mminner extends MouseMotionAdapter
{
public void mouseDragged(MouseEvent e)
{
tk.setText("鼠标坐标:鼠标进入:"+"("+e.getX()+","+e.getY()+")");
}
}
public class Meinner extends MouseAdapter
{
public void mouseEntered(MouseEvent e)
{
tk.setText("鼠标进入!");
}
}
}
interface A
{
int meth1();
}
interface B
{
int meth2();
}
interface C extends A,B
{
int meth3();
}
class JC implements C
{
public int meht1()
{
return 1;
}
public int meth2()
{
return 2;
}
public int meth3()
{
return 3;
}
public int meth4()
{
return 4;
}
}
class Jkou
{
public static void main(String args[])
{
JC j=new JC();
System.out.println("实现方法meth1():"+j.meth1());
System.out.println("实现方法meth2():"+j.meth2());
System.out.println("实现方法meth3():"+j.meth3());
System.out.println("实现方法meth4():"+j.meth4());
}
}
第二个
public interface Showable
{
public static final double PI=3.14159;
public abstract void setcircle(int a,int b);
public double area();
}
class cirele
{
double r;
double x,y;
public circle()
{
x=0.0;
y=0.0;
r=0.0;
}
public circle(double x,double y,double r)
{
this.x=x;
this.y=y;
this.r=r;
System.out.print("圆点:"+"("+x+","+y+")");
}
public double area()
{
return(3.14159*r*r);
}
}
class Shocircle extends circle implements Shoabel
{
int a,b;
double x,y,r;
public Showcircle(double x,double y,double r)
{
super(x,y,r);
}
public void setcircle(int a,int b)
{
this.a=a;
this.b=b;
System.out.println("a="+a+","+"b="+b);
}
public double area()
{
return 2*super.area();
}
}
public class intertest
{
public static void main(String args[])
{
Showcircle c=new Sshowcircle(2.0,3.0,4.0);
System.out.println();
c.secircle(4,6);
System.out.println("两圆面积:"+c.area());
}
}
第三个
import java.awt.*;
import java.awt.event.*;
public class A
{
private Frame k;
private TextField tk;
public static void main(String args[])
{
Eventinner ev=new Eventinner();
ev.use();
}
public void use()
{
k=new Frame("Event Example");
k.add("North",new Button("North"));
tk=new TextField(20);
k.add("south",tk);
k.addMouseMotionListener(new Mminner());
k.addMouseListener(new Meinner());
k.setSize(100,150);
}
public class Mminner extends MouseMotionAdapter
{
public void mouseDragged(MouseEvent e)
{
tk.setText("鼠标坐标:鼠标进入:"+"("+e.getX()+","+e.getY()+")");
}
}
public class Meinner extends MouseAdapter
{
public void mouseEntered(MouseEvent e)
{
tk.setText("鼠标进入!");
}
}
}
interface C extends A,B
java中只允计单继承
第二个:
你定义了一个接口
public interface Showable
但你实现接口时用的是
class Shocircle extends circle implements Shoabel
你仔细看一下.你的接口名打对了没有?????第三个:
你有eventner这个类吗?
Eventinner ev=new Eventinner();其实你问的都是些简单的问题.主要是要注册一下书写方面的.
public int meht1()这句有问题.
你并没有在接口C中实现接口A的方法 meth1();
你看清楚.你方法名又打错了.综上所述.基本都是这些书写错
这三个都改过来了
不过第三个类A应该是Eventinner
但运行java Eventinner后没有显示呢,不知道什么原因
因为还没有看到监听器方法那章,所以查过API后还是不太明白下面这些的具体用法,能详细的给讲一下吗?谢谢
k.addMouseMotionListener(new Mminner()); //??
public class Mminner extends MouseMotionAdapter //??
{
public void mouseDragged(MouseEvent e) //??
{
tk.setText("鼠标坐标:鼠标进入:"+"("+e.getX()+","+e.getY()+")");
}
}
但事件发生后做什么样的事情呢,这就需要用到委托处理首先:根据你要处理的事件,实现一个能够处理该事件的接口。接口中定义了处理不同事件的方 法,但是你可能只处理一个事件,而接口中的方法又很多,所以适配器(Adapter)出现了,它是为了懒人而设计的,为接口中的方法都作了空实现,这样的话你要实现某个接口的话,只要继承它的适配器就可以了public class Mminner extends MouseMotionAdapter //??
{
public void mouseDragged(MouseEvent e) //??
{
tk.setText("鼠标坐标:鼠标进入:"+"("+e.getX()+","+e.getY()+")");
}
}你写的这个类就是继承了MouseMotionAdapter ,然后为你感兴趣的事件书写方法,不感兴趣就可以不管了。
好了,实现了接口就是定义你在事件发生的时候做什么工作但是你必须将一个可能发生事件的组件与这个类的实例联系起来,就是告诉这个实例,让它负责
处理这个组件上发生的事件
k.addMouseMotionListener(new Mminner()); 这句就是这个意思了, 让new Mminner() 这个实例负责处理k上面的发生的事件
ok 很清楚吧事件处理就两步 1.实现接口
2.监听
k.addMouseMotionListener(new Mminner());//这句话的意思是用new Mminner()监听K这个组件吗
public class Mminner extends MouseMotionAdapter
{
public void mouseDragged(MouseEvent e) //这个方法没有被调用呀,怎么执行的呢
{
tk.setText("鼠标坐标:鼠标进入:"+"("+e.getX()+","+e.getY()+")");
}
}
k.addMouseMotionListener(new Mminner());//这句话的意思是用new Mminner()监听K这个组件吗
public class Mminner extends MouseMotionAdapter
{
public void mouseDragged(MouseEvent e) //这个方法没有被调用呀,怎么执行的呢
{
tk.setText("鼠标坐标:鼠标进入:"+"("+e.getX()+","+e.getY()+")");
}
}这个代码并没有使用接口.他使用的是MouseMotionAdapter类.这个类已经帮我们实现了接口的各种方法. 我们只需要继承他就可以了.要用哪一个方法。就可以只覆盖那一个方法.