由父类引用调用子类独有的方法引出模板方法模式

夕阳下的聊天:
和小伙伴一起去吃饭,他跟我说面试官问了他一个问题:父类引用如何调用子类重载或者独有的方法?我一愣,工作快两年了,从来没有遇到过这种用法。我当时想的是向下转型,小伙伴说,还可以使用反射。对啊,反射都用了,想拿啥拿啥呗。吃完饭回到家,看了几篇博客,很有启发,牵引出了以前不怎么理解的模板模式。

多态实现的三个步骤:继承、重写、向上转型,这样父类引用可以调用子类重写的方法。回到问题:父类引用想要调用子类重载或者独有的方法,问题是为什么要有这种操作呢?如果要调用子类独有的方法,为什么要用继承呢?解决上述有点矛盾的问题,用到了模板方法模式。

我只是抛砖引玉,关于模板方法模式,好博客太多了,请参考大神的博客:
https://blog.csdn.net/shensky711/article/details/53418034

你可能感兴趣的:(java,模板方法模式)