父类返回子类类型的函数写法
今天的话题很简单,分享下也许对大家可以有帮助或者有启发。
1. 背景
一看题目,有点儿晕。看个例子马上就明白了:
1 | abstract class EventBuilder() { |
我们有这么一个类,一看就是要写 Builder 模式。不过由于我们的这个 Event 的类型比较多,因此希望写一个父类,来一个子类感受下:
1 | class DisposableEventBuilder : EventBuilder() { |
看上去也没啥大毛病,用一下吧:
1 | DisposableEventBuilder().retryLimit(3) |
我们调用完父类的 retryLimit
方法后,想要设置下 delay
,结果发现没有这个方法。
“我 X,这什么玩意儿”,你嘟囔了一句。