多态的核心条件
继承关系:存在父子类关系(如Dog/Cat extends Animal)
方法重写:子类必须重写父类方法
向上转型:父类引用指向子类对象(Animal a = new Dog())
多态的优势
扩展性强:新增动物类型(如Bird)无需修改调用代码
接口统一:所有动物通过makeSound()统一访问
降低耦合:调用者只需关注父类接口,不依赖具体子类
继承关系:存在父子类关系(如Dog/Cat extends Animal)
方法重写:子类必须重写父类方法
向上转型:父类引用指向子类对象(Animal a = new Dog())
扩展性强:新增动物类型(如Bird)无需修改调用代码
接口统一:所有动物通过makeSound()统一访问
降低耦合:调用者只需关注父类接口,不依赖具体子类