/**
接口应用:策略模式(Strategy Pattern),定义了一系列的算法,将每一种算法封装起来,
并可以相互替换使用,
策略模式让算法独立于使用它的用户应用而独立变化.
*/
public class Test1 {
public static void main(String[] args) {
BaseService user=new UserService();
user.setISave(new FileSave());
user.add("user");
}
}
//把可变的行为抽象出来,定义一系列的算法
interface ISave{
public void save(String data);
}
class FileSave implements ISave{
public void save(String data){
System.out.println("把数据保存到文件中..."+data);
}
}
class NetSave implements ISave{
public void save(String data){
System.out.println("把数据保存到网络中..."+data);
}
}
abstract class BaseService{
//组合接口
private ISave iSave;
public void setISave(ISave iSave) {
this.iSave = iSave;
}
public void add(String data){
System.out.println("检查数据合法性...");
iSave.save(data);
System.out.println("数据保存完毕。");
}
}
class UserService extends BaseService{
}
java13 OOP接口应用:策略模式(Strategy Pattern) 2022-02-07
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 1.策略模式简介 策略模式(Strategy Patter)是行为型(Behavioral)设计模式,策略模式封装...
- 相信大家都用过计算器,输入一个数,然后输入运算符,然后再输入一个数,就会根据不同的运算符做不同的运算。 最直接的加...
- 策略模式,在阿里巴巴开发手册中有提到过,可以用来减少if-else嵌套,是一个常用的设计模式。策略模式结构如下图,...
- 策略模式 定义 在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的...