RT  初学java  不太理解  接口没有方法体 
抽象类不能实例化该怎么用呢?

解决方案 »

  1.   


    应该把类看成两种:  接口, 实现.
    把一个类可以具有的功能抽出, 变成接口, 然后写一个实现类实现它.
    例如交通工具类, 可以提出它的功能, 就是能跑,于是我们搞一个接口
    inteface runnable{
      public run();
    }
    然后我们实现  公交车,卡车, 船, 自行车啦, 都去实现这个接口.
    而我们可能发现, 公交车,卡车,跑的方式是一样的.
    于是我们可以实现一个抽象类 车,实现接口,  然后公交车,卡车都继承车
      

  2.   

    应该把类看成两种:  接口, 实现.
    把一个类可以具有的功能抽出, 变成接口, 然后写一个实现类实现它.
    例如交通工具类, 可以提出它的功能, 就是能跑,于是我们搞一个接口
    inteface runnable{
      public run();
    }
    然后我们实现  公交车,卡车, 船, 自行车啦, 都去实现这个接口.
    而我们可能发现, 公交车,卡车,跑的方式是一样的.
    于是我们可以实现一个抽象类 车,实现接口,  然后公交车,卡车都继承车
    //////////////////////////////////////////////////////////////////////////////
    一个是做什么的抽象,一个是怎么做的抽象
      

  3.   

    哦  稍微理解了一些也就是说 runable接口规定车 能 跑 且只能跑, 然后 公交车,卡车都继承车 
    接口规定必须做什么 
    而抽象给定怎么做?对吗? 抽象 是 is a 似乎明白   公交车,卡车都是车
    那么为什么 接口是 is like  ?  因为能 继承多个接口?
      

  4.   

    is like 是指类可以具有接口中定义的功能,和接口的功能相似,但是因为接口不能有实列和类可以实现多个接口,所以类与接口不能是 is a的关系!
      

  5.   

    接口也可以说是 is a; 例如, 车是交通工具(车是能跑的);
    接口就是定义能做什么.
    抽象类是实现共性的实现类. 具体实现是卡车,公交车等.所以说应该把类看成两种:  接口(定义), 实现.