①UML设计:

②定义:定义一个抽象类,将部分逻辑以具体方法的形式实现,声明一些抽象方法来迫使子类实现剩余的逻辑,不同的子类以不同的方式实现这些抽象方法,从而对剩余的逻辑有不同的实现。
③示例:
/**
* 构建一个pc接口
*/
public interface Computer{
void start();
}/**
* 构建抽象模板
*/
public abstract class AbstractComputer implements Computer{
@Override
public void start(){
//判断是否已经开机
if(!isStarted()){
return;
}
firstStep();
secondStep();
}
private boolean isStarted(){
System.out.println("已经开机");
return true;
}
protected abstract void firstStep();
protected abstract void secondStep();
}/**
* 具体实现类
*/
public class Lenovo extends AbstractComputer{
@Override
public void firstStep(){
System.out.println("show lenovo");
}
@Override
public void secondStep(){
System.out.println("show lenovo music");
}
}/**
* 具体实现类
*/
public class MacPro extends AbstractComputer{
@Override
public void firstStep(){
System.out.println("show macPro");
}
@Override
public void secondStep(){
System.out.println("show macPro music");
}
}public class Test{
public static void main(String args[]){
Computer cp = new MacPro();
cp.start();
}
}
本文介绍了一种使用UML设计的模板方法模式,通过定义一个抽象类并声明抽象方法来确保子类能够实现特定的逻辑。具体实现类如Lenovo和MacPro展示了如何根据各自特性实现抽象方法。
5053

被折叠的 条评论
为什么被折叠?



