模版方法
顾名思义,模版方法就是定义一个模版,模版里面有具体的步骤。某些步骤在父类定义,然后由子类去实现。
优化
- 封装不变部分,扩展可变部分
- 提取公共部分代码,便于维护
- 行为由父类控制,子类实现
AbstractUser
抽象用户
public abstract class AbstractUser {
public abstract int getBase();
public int calSum() {
int base = getBase();
return base * 5;
}
}
父类AbstractUser
,有一个方法calSum()
计算总和,其中getBase()
由子类去计算它的基数。
VipUser
VIP用户
public class VipUser extends AbstractUser {
@Override
public int getBase() {
return 2;
}
}
NormalUser
普通用户
public class NormalUser extends AbstractUser{
@Override
public int getBase() {
return 1;
}
}
网友评论