zoukankan      html  css  js  c++  java
  • 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("建一个鸟对象");
        }
    }

    结果截图:

      

    如有任何疑问可联系邮箱: 给我发邮件、或直接联系QQ:1584875179 || 点返回首页

  • 相关阅读:
    hdu 4334 Trouble
    hdu 4324 Triangle LOVE
    hdu 4255 A Famous Grid
    hdu 3549 Flow Problem
    hdu 3371 Connect the Cities
    hdu 2846 Repository
    hdu 2120 Ice_cream's world I
    P3304 [SDOI2013]直径(【模板】树直径的必经边)
    P5490 【模板】扫描线
    P1364 医院设置(【模板】树的重心)
  • 原文地址:https://www.cnblogs.com/aeon/p/9967554.html
Copyright © 2011-2022 走看看