/**
接口应用:策略模式(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
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- 1.策略模式简介 策略模式(Strategy Patter)是行为型(Behavioral)设计模式,策略模式封装...
- 相信大家都用过计算器,输入一个数,然后输入运算符,然后再输入一个数,就会根据不同的运算符做不同的运算。 最直接的加...
- 策略模式,在阿里巴巴开发手册中有提到过,可以用来减少if-else嵌套,是一个常用的设计模式。策略模式结构如下图,...
- 策略模式 定义 在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的...