0
点赞
收藏
分享

微信扫一扫

java学习多态的好处和弊端

多态的好处:提高了程序的扩展性

    具体体现:定义方法的时候,使用父类型作为参数,将来在使用的时候,使用具体的子类型参与操作。

多态的弊端:不能使用子类的特有功能

     

package com.ithema_37;
/*
测试类
*/
public class AnimalDemo {
public static void main(String[] args) {
//创建动物操作类的对象,调用方法
AnimalOperator aO = new AnimalOperator();

Cat c = new Cat();
aO.useAnimal(c);

Dog d = new Dog();
aO.useAnimal(d);

Pig p = new Pig();
aO.useAnimal(p);
}
}
package com.ithema_37;

public class Animal {

public void eat(){
System.out.println("动物吃东西");
}
}
package com.ithema_37;
/*
动物操作类
*/
public class AnimalOperator {
/*

public void useAnimal(Cat c){ //Cat c = new Cat();
c.eat();
}
public void useAnimal(Dog d) { //Dog d = new Dog();
d.eat();
}
*/
public void useAnimal(Animal a){
//Animal a = new Cat();
//Animal a = new Dog();
a.eat();
// a.lookDoor();
}
}
package com.ithema_37;


public class Cat extends Animal{
@Override
public void eat() {
System.out.println("猫吃鱼");
}
}
package com.ithema_37;

public class Dog extends Animal{

@Override
public void eat() {
System.out.println("狗吃骨头");
}
public void lookDoor(){
System.out.println("狗看大门");
}
}
package com.ithema_37;

public class Pig extends Animal{
@Override
public void eat() {
System.out.println("猪爱吃饲料");
}
}
举报

相关推荐

0 条评论