JAVA设计模式--七大原则之开闭原则(05)

开闭原则就是说对扩展开放,对修改关闭。

扩展开放---对提供方(新增加的功能)

修改关闭--使用放

public class Simple01 {

    public static void main(String[] args) {
        CarFactory carFactory = new CarFactory();
        carFactory.getCar(new SuvCar(30));
        carFactory.getCar(new JcCar(7));
    }
}

class CarFactory {

    public void getCar(BaseCar car) {
        //动态调用car的实现方法,从而实现了修改的关闭;对扩展的开放,因为这里依赖的是抽象,所以在使用时动态提供,从而动态改变其功能
        car.getCar();
    }
}

abstract class BaseCar {
    int carType;

    abstract void getCar();
}

class SuvCar extends BaseCar {

    public SuvCar(int carType) {
        super.carType = carType;
    }

    @Override
    void getCar() {
        if (carType >= 20) {
            System.out.println("输出一两20万级别的SUV车");
        } els
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值