当前位置: 首页> 游戏> 手游 > 网络推广方案怎么做_株洲网站排名_重庆seo哪个强_免费网站服务器

网络推广方案怎么做_株洲网站排名_重庆seo哪个强_免费网站服务器

时间:2025/7/19 0:44:56来源:https://blog.csdn.net/qq_58462591/article/details/145568247 浏览次数:0次
网络推广方案怎么做_株洲网站排名_重庆seo哪个强_免费网站服务器

1.简单工厂模式

  概念:主要是通过一种创建对象的方式,而无需指定具体的类,从而实现代码的复用。主要是学习其中的思想,让每个业务分隔开,使用继承、封装、多态等Java的特性,实现代码的高可复用性。

  例子:用简单工厂模式实现一个计算器,当需要对同种类型数据进行不同的处理时,就可以考虑使用简单工厂模式,大概就是写一个抽象基类或者接口,然后基类里面写一个抽象业务方法没有实现,也可把子类的业务都需要的方法在基类实现,然后写具体的操作类,继承基类然后重写业务方法,根据不同的业务写不同的逻辑,再写一个工厂类,具体就是根据不同的业务类型实例化不同的类,得到最后的结果,最后返回的都是基类类型。

// 基类
abstract class Operation {public abstract double calculate(double num1, double num2);
}// 具体操作类 - 加法
class Addition extends Operation {@Overridepublic double calculate(double num1, double num2) {return num1 + num2;}
}// 具体操作类 - 减法
class Subtraction extends Operation {@Overridepublic double calculate(double num1, double num2) {return num1 - num2;}
}// 具体操作类 - 乘法
class Multiplication extends Operation {@Overridepublic double calculate(double num1, double num2) {return num1 * num2;}
}// 具体操作类 - 除法
class Division extends Operation {@Overridepublic double calculate(double num1, double num2) {if (num2 == 0) {throw new IllegalArgumentException("除数不能为零");}return num1 / num2;}
}// 工厂类
class OperationFactory {public static Operation getOperation(String operation) {if (operation == null) {return null;}switch (operation) {case "+":return new Addition();case "-":return new Subtraction();case "*":return new Multiplication();case "/":return new Division();default:throw new IllegalArgumentException("未知的操作符: " + operation);}}
}// 客户端代码
public class Calculator {public static void main(String[] args) {double num1 = 10;double num2 = 5;String operation = "+";Operation op = OperationFactory.getOperation(operation);double result = op.calculate(num1, num2);System.out.println("结果: " + result);// 测试其他操作operation = "-";op = OperationFactory.getOperation(operation);result = op.calculate(num1, num2);System.out.println("结果: " + result);operation = "*";op = OperationFactory.getOperation(operation);result = op.calculate(num1, num2);System.out.println("结果: " + result);operation = "/";op = OperationFactory.getOperation(operation);result = op.calculate(num1, num2);System.out.println("结果: " + result);}
}

关键字:网络推广方案怎么做_株洲网站排名_重庆seo哪个强_免费网站服务器

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: