- 浏览: 117843 次
- 来自: ...
文章分类
最新评论
-
x影千绝:
...
JDBC addbatch批量处理数据时有最大值限制 -
hunnuxiaobo:
为什么呢?
JDBC addbatch批量处理数据时有最大值限制 -
天涯海角tour:
是啊? 我在7.1下就装不上jbpm4.4,按你这着方法
MyEclipse7.1插件安装 -
t8500071:
原来exec后是子进程,怪不得我怎么看都不像是一个完全独立的进 ...
Java的多进程运行模式分析 -
海阔天空love:
很实用 。。。能给个例子吗?
现有的Web打印控制技术分成几种方案
计算器程序的简单工厂模式实现
Operation.java
-----------------
OperationAdd.java
---------
OperationFactory.java
-------------
CustClient.java
Operation.java
package com.calculator; public abstract class Operation {//抽象类 private double _numberA = 0; private double _numberB = 0; public double get_numberA() { return _numberA; } public void set_numberA(double _numbera) { _numberA = _numbera; } public double get_numberB() { return _numberB; } public void set_numberB(double _numberb) { _numberB = _numberb; } public abstract double GetResult(); }
-----------------
OperationAdd.java
package com.calculator; public class OperationAdd extends Operation{ @Override public double GetResult() { // TODO Auto-generated method stub double result = 0; result = get_numberA() + get_numberB(); return result; } } class OperationSub extends Operation{ @Override public double GetResult() { // TODO Auto-generated method stub double result = 0 ; result = get_numberA() - get_numberB(); return result; } } class OperationMul extends Operation{ @Override public double GetResult() { // TODO Auto-generated method stub double result = 0 ; result = get_numberA() * get_numberB(); return result; } } class OperationDiv extends Operation { @Override public double GetResult() { // TODO Auto-generated method stub double result = 0 ; if(get_numberB() == 0) try { throw new Exception("除数不能为0"); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } result = get_numberA() / get_numberB(); return result; } }
---------
OperationFactory.java
package com.calculator; public class OperationFactory { public static Operation createOperate(char operate){ Operation operation = null; switch(operate){ case '+': operation = new OperationAdd(); break; case '-': operation = new OperationSub(); break; case '*': operation = new OperationMul(); break; case '/': operation = new OperationDiv(); break; } return operation; } }
-------------
CustClient.java
package com.calculator; public class CustClient { public static void run(){ Operation oper ; oper = OperationFactory.createOperate('/'); oper.set_numberA(1); oper.set_numberB(2); double result = oper.GetResult(); System.out.println(result); } public static void main(String [] args){ CustClient.run(); } }
发表评论
-
thinkpad T440P 无线网卡睡眠恢复后无法上网故障的解决
2014-08-06 23:54 2575现象:thinkpad T440P 无线网卡睡眠恢复后无法上网 ... -
myeclipse10.7.1注册及导出war异常的破解
2013-03-02 12:55 7一、原作者的破解程序在myeclipse10.7.1环境下测试 ... -
tcnative-1_dll下载地址
2012-04-09 22:31 1088tcnative-1.dll下载地址: http://arch ... -
转:权限的分类
2011-09-30 16:59 1083权限主要分两大类:一是功能权限,二是数据权限。 功能权 ... -
转:表单同时提交多条记录
2011-09-07 09:38 2534http://zhidao.baidu.com/questio ... -
立即行动 拯救JAVA
2011-04-02 09:12 833通过Oracle目前的各种行动,我可以肯定它会比微软更 ... -
转:java获取根路径有两种方式
2010-09-04 22:49 2482http://java.chinaitlab.com/net/ ... -
转:java等比例压缩图片
2010-08-24 15:03 2119http://hi.baidu.com/bdusnb/blog ... -
转:多路归并排序(远远大于内存的数据进行外排序)
2010-08-20 16:38 1902http://hi.baidu.com/qq350884961 ... -
转:两个字母搞定J2EE通用分页标签
2010-06-16 15:59 1425两个字母搞定J2EE通用分 ... -
系统中那些部分可以提取为公共部分?
2010-06-12 18:39 823我目前能想到的就是: 分页、上传、通用DAO层、控制层、数据字 ... -
转:Quartz在Spring中动态设置cronExpression (spring设置动态定时任务)
2010-06-09 09:22 1123http://hi.baidu.com/vip099/blog ... -
c3p0 no bug but the windows xp have
2010-05-31 08:33 17275月30日,用了一天的时间在找一个c3p0的bug,但没有找到 ... -
转:如何利用eclipse实现批量修改文件的编码方式
2010-05-29 14:02 3506原文地址:http://dev.firnow.com/cour ... -
转载:教你彻底解决 Tomcat 5下文字乱码问题
2010-03-04 20:30 924http://tech.ccidnet.com/art/353 ... -
JDBC addbatch批量处理数据时有最大值限制
2009-12-27 13:29 7936在用jdbc向数据灌入数据时,发现120000的数据每次只能灌 ... -
网站如何赚钱
2009-05-28 13:30 609很多朋友,特别是对网 ... -
走进Java 7中的模块系统
2009-05-15 09:44 1006http://developer.51cto.com/art/ ... -
MyEclipse7.1插件安装
2009-04-28 11:06 3576最近刚使用MyEclise 7.1 ,发现期插件安装与以前有所 ... -
Java的多进程运行模式分析
2009-04-25 21:05 1187一般我们在Java中运行其它类中的方法时,无论是静态调用,还是 ...
相关推荐
"C#工厂模式_计算器"是一个示例,它展示了如何在C#中应用工厂模式来实现一个计算器,同时也涉及到了多态性这一核心面向对象编程概念。 首先,让我们详细解释一下工厂模式。工厂模式是一种创建型设计模式,它的主要...
在实现中,`WebTest`可能是测试项目或类库的名称,用于验证抽象工厂模式在计算器应用中的正确性。在这个测试项目中,我们可能会创建不同的工厂实例,然后使用这些工厂生成计算器对象并执行计算操作,以此来确保每个...
**简单工厂模式计算器** 在软件设计模式中,简单工厂模式是一种常用的创建型模式,它提供了一个创建对象的接口,但允许子类决定实例化哪一个类。在这个案例中,"C++制作的简单工厂模式计算器"就是一个运用了简单...
**Android计算器(简单工厂模式)** 简单工厂模式是一种创建型设计模式,它提供了一种创建对象的最佳方式。在这个模式中,一个单独的类(被称为工厂)负责创建对象,客户端通过调用工厂方法来获取所需的对象,而无需...
在这个实现的计算器项目中,我们利用了简单工厂模式,结合了面向对象编程的三大特性——继承、封装和多态,来构建一个灵活且易于扩展的计算器系统。 首先,我们来看一下简单工厂模式的核心思想。在该模式中,我们...
在本例中,"简单工厂模式(计算器)"是一个基于C#语言的控制台应用程序,它通过使用简单工厂模式来创建计算器的不同功能,如加法、减法、乘法和除法。 首先,我们来看简单工厂模式的核心结构。在模式中,有一个工厂...
在“设计模式 简单工厂模式 简易计算器代码”这个主题中,我们将探讨如何使用简单工厂模式来实现一个简单的计算器。计算器是我们日常编程中常见的例子,因为它包含了多个操作,如加、减、乘、除等,这为我们展示了...
在本例中,"简单工厂模式计算器(C#源码)"是一个使用C#编程语言实现的计算器应用,它运用了简单工厂模式来处理基本的四则运算(加、减、乘、除)。以下是对这个项目中涉及的关键知识点的详细说明: 1. **简单工厂...
在"简单工厂模式-计算器"这个例子中,我们看到的是一个基于Java实现的计算器应用,它可能包含了如何运用简单工厂模式来构建一个计算器的实例。在这个场景下,我们可以深入探讨以下几个方面: 1. **简单工厂方法**:...
包含两个zip文件夹calculatorConsole.zip和calculatorConsole2.zip,...还增加了异常处理,以及运用了“简单工厂设计模式”,代码的灵活性、扩展性、复用性、维护性都很好,可以很方便的移植到需要GUI的计算器实现中。
- **可复用性**:通过简单工厂模式,我们可以轻松创建不同类型的计算器,提高代码的复用性。 2. **实现方式**: - **Calculator接口**:定义所有计算器共有的方法,如`calculate(int num1, int num2)`,用于执行...
本文将详细探讨如何在C#中应用简单工厂模式来设计一个计算器,实现基本的邻位四则运算。 简单工厂模式是创建型设计模式之一,它的主要作用是提供一个工厂类,负责根据输入条件(例如运算符)动态地创建对象。在本例...
在这个例子中,我们讨论的是如何使用工厂方法模式(Factory Method Pattern)实现一个简易计算器。工厂方法模式是一种创建型设计模式,它提供了一种创建对象的最佳方式。在工厂方法模式中,一个工厂接口或者抽象类...
UML文档-简单工厂模式 ...简单工厂模式和抽象工厂模式都是工厂模式的变种,它们都可以用来创建对象,但是它们的实现方式和应用场景不同。简单工厂模式适合创建单个产品,而抽象工厂模式适合创建多个产品族。
本项目通过工厂方法模式重构简易计算器,旨在展示这种模式在实现基本计算功能时的优势。 首先,我们要理解工厂方法模式的基本概念。这是一种创建型设计模式,它定义了一个创建对象的接口,但允许子类决定实例化哪一...
在这个"工厂模式实现的简单计算器"中,我们看到的是工厂模式在实际应用中的一个实例。 首先,我们来详细了解一下工厂模式。工厂模式有三种主要的形式:简单工厂模式、工厂方法模式和抽象工厂模式。这里提到的应该是...
1)程序功能:用简单工厂模式实现计算器功能,采用PHP编写。 2)程序详解地址:http://blog.csdn.net/clevercode/article/details/45692995。 3)原创作品,出自"CleverCode的博客",分类为《设计模式之PHP项目应用...
Java命令行计算器是一个基于简单工厂模式实现的编程项目,它提供了基本的四则运算功能,包括加、减、乘、除。简单工厂模式是设计模式中的结构型模式,它的主要目的是将对象的创建过程封装起来,使代码更易于维护和...
这个例子展示了如何利用C#实现简单工厂模式来构建一个计算器。通过这种方式,我们可以轻松地扩展计算器功能,只需添加新的计算器类并更新工厂类即可。同时,这种设计使代码更加模块化,易于理解和测试。 总结来说,...
9. **设计模式**:虽然这是一个简单的项目,但也可以引入设计模式,比如工厂模式用于创建不同类型的计算操作,或者策略模式来动态改变计算算法。 10. **编译与运行**:在开发过程中,开发者会使用javac命令编译Java...