继承和组合
共同点:都可以实现代码的复用。
不同点:↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
is-a关系:使用继承【这种事物(绵羊)是那种事物(羊)中的一个种类。】【‘是’关系用继承】
has-a关系:使用组合【这种事物(羊毛)隶属于那种事物(绵羊),是它的一个部分、部件。】【‘拥有’关系用组合】
public class has{
public static void main(String[] args) {
Bird bird=new Bird();
bird.run();
}
}
class Anima {
public void run() {
System.out.println("跑跑跑");
}
}
class Bird {
Anima anima=new Anima();
public void run() {
anima.run();
System.out.println("老鸟");
}
}