IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> 工厂方法模式(雷锋依然在人间) -> 正文阅读

[Java知识库]工厂方法模式(雷锋依然在人间)

学习目标:

雷锋依然在人间——工厂方法模式


学习内容:

提示:这里可以添加要学的内容
例如:
1、 搭建 Java 开发环境
2、 掌握 Java 基本语法
3、 掌握条件语句
4、 掌握循环语句


1、简单工厂的实现
1.1 以计算机为例,结构图
在这里插入图片描述
1.2 工厂类这样写

package org.xunfang.test;

public class Operation {
    private double _numberA=0;
    private double _numberB=0;

    public double get_numberA() {
        return _numberA;
    }

    public void set_numberA(double _numberA) {
        this._numberA = _numberA;
    }

    public double get_numberB() {
        return _numberB;
    }

    public void set_numberB(double _numberB) {
        this._numberB = _numberB;
    }

    //静态方法不可以重写
    /*public static double getResult(){
        double result = 0;
        return result;
    }*/
    public double getResult() throws Exception {
        double result = 0;
        return result;
    }
}
package org.xunfang.test;

public class OperationAdd extends Operation {
    @Override
    public double getResult() {
        double result = 0;
        result = this.get_numberA()+this.get_numberB();
        return result;
    }
}
package org.xunfang.test;

public class OperationSub extends Operation {
    @Override
    public double getResult() {
        double result = 0;
        result = this.get_numberA() - this.get_numberB();
        return result;
    }
}
package org.xunfang.test;

public class OperationMul extends Operation {
    @Override
    public double getResult() {
        double result = 0;
        result = this.get_numberA()* this.get_numberB();
        return result;
    }
}
package org.xunfang.test;

public class OperationDiv extends Operation {

    @Override
    public double getResult() throws Exception {
        double result = 0;
        if (this.get_numberB() == 0) {
            throw new Exception("除数不能为0");
        }
        result = this.get_numberA() / this.get_numberB();
        return result;
    }
}
package org.xunfang.test;

public class OperationFactory {
    public static Operation createOperate(String operate){
        Operation oper = null;
        switch (operate){
            case "+":
                oper=new OperationAdd();
                break;
            case "-":
                oper=new OperationSub();
                break;
            case "*":
                oper=new OperationMul();
                break;
            case "/":
                oper=new OperationDiv();
                break;
        }
        return oper;
    }
}
package org.xunfang.test;

public class Send {
    public static void main(String[] args) throws Exception {
        Operation operation;
        operation = OperationFactory.createOperate("+");
        operation.set_numberA(1);
        operation.set_numberB(2);
        /*operation.get_numberA();
        operation.get_numberB();*/
        double result = operation.getResult();
    }
}

2、工厂模式实现
2.1

在这里插入代码片
在这里插入代码片
在这里插入代码片

学习时间:

提示:这里可以添加计划学习的时间
例如:
1、 周一至周五晚上 7 点—晚上9点
2、 周六上午 9 点-上午 11 点
3、 周日下午 3 点-下午 6 点


学习产出:

提示:这里统计学习计划的总量
例如:
1、 技术笔记 2 遍
2、CSDN 技术博客 3 篇
3、 学习的 vlog 视频 1 个

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2022-03-06 12:48:23  更:2022-03-06 12:51:44 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 11:51:01-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码