简化如下
该设计非常巧妙
public abstract class AbstractBootstrap<B extends AbstractBootstrap<B>> {
private B self() {
return (B) this;
}
public B group(EventLoopGroup group) {
return self();
}
}
public class ServerBootstrap extends AbstractBootstrap<ServerBootstrap> {
public ServerBootstrap group2() {
return this;
}
}
public class Bootstrap extends AbstractBootstrap<Bootstrap> {
public Bootstrap group2() {
return this;
}
}
在父类中巧用泛型解决了子类调用父类方法强转的问题
网友评论