本文主要是介绍【惯用法:模板方法+建造者模式】interface(build接口)+abstract(声明构建步骤)+多个实现子类,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
毫无疑问,多态是java这类面向对象最有价值的地方,接口和抽象类可以帮助实现多态:其实就是父类去管理子类。
那他俩有啥区别呢?
其实,接口就是协议,一般没有实现。
而抽象类,可以有抽象方法,是让子类重写的,同时可以提供模板。
比如:
interface IBuildPlayerData{
Data build();
}
abstract AbstractBuildXXXData implement IBuildPlayerData{
private JSONObject data;
abstract void buildStep1();
abstract void buildStep2();
abstract void buildStep3();
@override
Data build(){
buildStep1().buildStep2().buildStep3();
}
}
class ImplClass extends AbstractBuildXXXData{
@override
void buildStep1(){
为data初始化1
}
@override
void buildStep2(){
为data初始化2
}
@override
void buildStep3(){
为data初始化3
}
这样子就可以了。
使用:
IBuildPlayerData build = new ImplClass(); // ImplClass只是一种策略,还可以有更多策略。
build.build();
这样子就可以了。
这篇关于【惯用法:模板方法+建造者模式】interface(build接口)+abstract(声明构建步骤)+多个实现子类的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!