Java基础 多态(Polymorphism)
一个事物具有多种表现形态,在 Java 程序中,定义一个方法,在具体的生成环境中根据不同的需求呈现不同的业务逻辑,多态的前提是继承。
举例说明:会员打折买书业务来理解多态
细分:Member会员类(父类)、OrdinaryMember普通会员类(子类)、SuperMember超级会员类(子类)、Cashier收银员类、Settlement结算测试类。
Member类(父类)
package com.temporary.polymorphism;
//抽象类会员Member包含抽象方法买书buyBook(无方法体),
//因为不管怎样子类都要重写父类的方法,
//索性将父类定义成抽象类抽象方法。
public abstract class Member {
public abstract void buyBook();
}
OrdinaryMember普通会员类(子类)
package com.temporary.polymorphism;
//子类普通会员OrdinaryMember继承父类Member,并实现其抽象方法。
public class OrdinaryMember extends Member{
@Override
public void buyBook() {
System.out.println("普通会员买书打九折");
}
}
SuperMember超级会员类(子类)
package com