interface Sport
{
void run();
void jump();
}
 class Athlete
{
public void run()
{
System.out.println("短跑");
}
/*public void jump()
{
System.out.println("三级跳");
}*/
public static void main(String args[])
{
Athlete at=new Athlete();
at.run();
//at.jump();
}
}
我不理解为什么这段程序可以编译成功,不是说接口中定义的方法,在子类中都必须实现才能实例化..

解决方案 »

  1.   

    你搞错了,兄弟!
    你写的class Athlete后面没有implements Sport!
      

  2.   

    子类在哪?
    Athlete和Sport有关系么?
      

  3.   

    .....................接口要implements才能用,楼上正解
      

  4.   

    LZ啊,你都没有实现这个接口,
    class   Athlete implements Sport
    这样才是实现这个接口啊,
      

  5.   

    接口中的方法,该接口的实现类确实必须全部实现,才能实例化。
    但是你贴出来的代码,类Athlete好像根本就没有声明要实现Sport,所以和接口一点关系都没有如果你这样声明类Athlete,就必须实现接口Sport的所有方法了:class Athlete implements Sport

        public void run() 
        { 
            System.out.println("短跑"); 
        }     /*public void jump() 
        { 
            System.out.println("三级跳"); 
        }*/     public static void main(String args[]) 
        { 
            Athlete at=new Athlete(); 
            at.run(); 
            //at.jump(); 
        } 
      

  6.   

    你的class Athlete后面没有implements Sport