类的组合:
- class Animals {
- private void beat() {
- System.out.println("心脏跳动。。。");
- }
- public void breath() {
- beat();
- System.out.println("呼吸中。。。");
- }
- }
- class Dog {
- // 将Animal嵌入到类里面
- private Animals animals;
- public Dog(Animals animals) {
- this.animals = animals;
- }
- // 定义一个自己的breath()方法
- public void breath() {
- // 直接复用Animals提供的方法
- animals.breath();
- }
- public void Run() {
- System.out.println("陆地上奔跑");
- }
- }
- class Bird {
- // 将Animal嵌入到类里面
- private Animals animals;
- public Bird(Animals animals) {
- this.animals = animals;
- }
- // 定义一个自己的breath()方法
- public void breath() {
- // 直接复用Animal提供的方法
- animals.breath();
- }
- // 定义自己的fly方法
- public void fly() {
- System.out.println("天空里面飞翔!");
- }
- }
- public class Combination {
- public static void main(String[] args) {
- Dog dog = new Dog(new Animals());
- dog.breath();
- dog.Run();
- Bird bird = new Bird(new Animals());
- bird.breath();
- bird.fly();
- }
- }
复制代码
类的继承:
class Animals {
private void beat() {
System.out.println("心脏跳动。。。");
}
public void breath() {
beat();
System.out.println("呼吸中。。。");
}
}
class Dog extends Animals {
public void Run() {
System.out.println("陆地上奔跑");
}
}
class Bird1 extends Animals{
// 定义自己的fly方法
public void fly() {
System.out.println("天空里面飞翔!");
}
}
public class Inheritance {
public static void main(String[] args) {
Dog dog = new Dog();
dog.breath();
dog.Run();
Bird1 bird = new Bird1();
bird.breath();
bird.fly();
}
}
以上输出的结果都是一样的,那么对于实现同样的结果来说,哪个对系统的开销最大呢? |
|