源码中的设计模式-模板方法模式

今天看AQS时,注意到它用到了模板方法设计模式。模板设计模式比较简单,父类定义好操作骨架,将一些方法的实现延迟到子类中,让子类实现。子类继承父类,实现必要的方法但不改变操作流程的整体结构。模板方法属于行为设计模式。

 

AQS提供的模板方法如下:

    @Override
    protected boolean tryAcquire(int arg) {
        return super.tryAcquire(arg);
    }

    @Override
    protected boolean tryRelease(int arg) {
        return super.tryRelease(arg);
    }


    @Override
    protected boolean tryReleaseShared(int arg) {
        return super.tryReleaseShared(arg);
    }

    @Override
    protected int tryAcquireShared(int arg) {
        return super.tryAcquireShared(arg);
    }

    @Override
    protected boolean isHeldExclusively() {
        return super.isHeldExclusively();
    }

 

上一篇:2021-03-28


下一篇:shiro认证