public interface MemberLevel {
double price(double price);
}
public class LowLevel implements MemberLevel {
@Override
public double price(double price) {
System.out.println("低级成员打八折");
return price*0.8;
}
}
public class HighLevel implements MemberLevel {
@Override
public double price(double price) {
System.out.println("高级成员打六折");
return price*0.6;
}
}
public class BuyGood {
MemberLevel memberLevel;
public BuyGood(MemberLevel memberLevel) {
this.memberLevel = memberLevel;
}
public double price(double price){
return memberLevel.price(price);
}
}
测试
public class Test {
public static void main(String[] args) {
double price = new BuyGood(new HighLevel()).price(100);
System.out.println(price);
double price1 = new BuyGood(new LowLevel()).price(100);
System.out.println(price1);
}
}
网友评论