美文网首页
策略模式

策略模式

作者: simplerandom | 来源:发表于2020-05-20 15:59 被阅读0次
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);
    }
}

相关文章

网友评论

      本文标题:策略模式

      本文链接:https://www.haomeiwen.com/subject/rwrnohtx.html