关于java类重复的问题,

来源:百度知道 编辑:UC知道 时间:2024/06/04 22:38:34
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
import java.net.*;
import java.util.*;
public class BC extends BaseApplet
{
public void init()
{
setWorld(new BCWorld(this));
}
}
class BC extends JFrame
{
BC(String title)
{
this.setTitle(title) ;
this.setSize(608 , 630) ;
this.setLocation(300 , 100) ;
this.setBackground(Color.WHITE) ;

MyTank mp = new MyTank() ;
this.add(mp) ;

this.addKeyListener(mp) ;

new Thread(mp).start() ;
}
public static void main(String[] args)
{

BC h = new BC("Battle City(version1.0)") ;

h.setVisible(true) ;
}
}
class BCWorld implements World
{

BaseApplet applet=null;
public BCWorld(BaseApplet applet)
{

回答:

可以看出来,你将类public class BC extends BaseApplet 和类class BC extends JFrame 放在了同一个文件里了.

而class BC extends JFrame这个类定义在后,意味着他们是两个类,那么class BC extends JFrame就是是重新定义的一个类,而不是前面的那个类了.

而同一个文件里两个类名字是不能一样的(一个包里也不行),
不然的话,别人调用的时候就不知道哪个是哪个类,

所以-------你必须改掉一个类的名称.

继承的意思就是那个类的老爸是谁谁谁,一个人不能用多个老爸,类也一样

JAVA里面一个类是不可继承多个父类的
楼主可以在写一个接口来继承JFrame后再用BC来实现这个接口

重复定义类。