日期:2014-05-20  浏览次数:20644 次

java中 抽象类和接口应该怎么用?
RT     初学java     不太理解    

接口没有方法体  
抽象类不能实例化

该怎么用呢?

------解决方案--------------------

应该把类看成两种: 接口, 实现.
把一个类可以具有的功能抽出, 变成接口, 然后写一个实现类实现它.
例如交通工具类, 可以提出它的功能, 就是能跑,于是我们搞一个接口
inteface runnable{
public run();
}
然后我们实现 公交车,卡车, 船, 自行车啦, 都去实现这个接口.
而我们可能发现, 公交车,卡车,跑的方式是一样的.
于是我们可以实现一个抽象类 车,实现接口, 然后公交车,卡车都继承车
------解决方案--------------------
在设计模式中运用的很多
------解决方案--------------------
老话:要面向接口编程
------解决方案--------------------
书上讲的很详细.

------解决方案--------------------
应该把类看成两种: 接口, 实现.
把一个类可以具有的功能抽出, 变成接口, 然后写一个实现类实现它.
例如交通工具类, 可以提出它的功能, 就是能跑,于是我们搞一个接口
inteface runnable{
public run();
}
然后我们实现 公交车,卡车, 船, 自行车啦, 都去实现这个接口.
而我们可能发现, 公交车,卡车,跑的方式是一样的.
于是我们可以实现一个抽象类 车,实现接口, 然后公交车,卡车都继承车
//////////////////////////////////////////////////////////////////////////////
一个是做什么的抽象,一个是怎么做的抽象
------解决方案--------------------
is like 是指类可以具有接口中定义的功能,和接口的功能相似,但是因为接口不能有实列和类可以实现多个接口,所以类与接口不能是 is a的关系!