纯css打造立体时钟
  • 12
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
By_jie

042_面向对象_15_组合

一、继承和组合的区别

  共同点:都可以实现代码的复用
  不同点:
    is-a关系:表示是关系使用继承、如鸟是一种动物。
    has-a关系:表示拥有关系应该使用组合、如鸟类拥有翅膀。

二、演示示例

  

package edu.aeon.test;
/**
 * [说明]:测试组合
 * @author aeon
 *
 */
public class Animal {
    String eye;

    public void run() {
        System.out.println("跑跑!");
    }

    public void eat() {
        System.out.println("吃吃!");
    }

    public void sleep() {
        System.out.println("zzzzz");
    }

    public Animal() {
        super();
        System.out.println("创建一个动物!");
    }

    public static void main(String[] args) {
        Bird2 b = new Bird2();
        b.run();
        b.animal.eat();
    }
}

class Mammal {
    Animal animal2 = new Animal();

    public void taisheng() {
        System.out.println("我是胎生");
    }
}

class Bird2 {
    Animal animal = new Animal();

    public void run() {
        animal.run();
        System.out.println("我是一个小小小小鸟,飞呀飞不高");
    }

    public void eggSheng() {
        System.out.println("卵生");
    }

    public Bird2() {
        super();
        System.out.println("建一个鸟对象");
    }
}

结果截图:

  

 

posted @ 2018-11-16 09:46  1024军团  阅读(123)  评论(0编辑  收藏  举报