]面向对象(11)继承(组合)

package one.text;

public class Animal {
 private void beat(){
   System.out.println("心脏跳动");
 }

 public void breath(){
  beat();
  System.out.println("吸一口气,吐一口气,呼吸中");
  
 }
}

 

public class Bird   {

 
  private Animal a;
  public Bird(Animal a)
  {
   this.a = a;
  }
 
 
 
 
  public void breath(){
  a.breath();
  
  }
  public void fly()
  {
   System.out.println("天空飞行鸟。。。。。。");
  }
}

 

private Animal a;
 
      public  wolf(Animal a){  //将calss的引用当作参数 给本类的构造函数
     
       this.a =a;
      }
     
  public void breath(){
  a.breath();
  }
 
 
 public void run(){
  
  System.out.println("我在地下跑。。。");
 }
}

 

 

 

public class TestInherit {
  public static void main(String[] args) {
 
  
     Animal a = new Animal(); //创建Animal a的引用
      Bird b = new Bird(a);//直接将引用给bird
      b.breath();
      b.fly();
      wolf w = new wolf(a);
       w.breath();
       w.run();
  
}
}

 如果两个类之间有明确的整体。部分的关系 就用适合组合

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值