我正在用Java编写一个小程序,用于OOAD类中的赋值,但我在确切了解什么构成正确的工厂设计模式以及如何在我的程序中实现时遇到了问题.

这是一个用于薪资计算的小程序.有一个称为Employee的基类,以及三个名为Hourly,Commissioned和Salaried的派生(子)类.他们每个人都有不同的付款数据类型.我只允许在主类以及整个程序中实例化一个对象.通过多态,对象应该在类之间共享,我要编写一个Factory方法来创建要分配给THE Object的对象.

我有基类:

public class Employee {

protected Employee empFactory(int empType){

if (empType == 1)

return new Hourly();

if (empType == 2)

return new Commissioned();

if (empType == 3)

return new Salaried();

else

return null;

}

public static void main(String[] args) {

// TODO code application logic here

}

以及三个派生类:

public class Commissioned extends Employee

public class Hourly extends Employee

public class Salaried extends Employee

我省略了一些数据类型和其他细节,我认为这应该是足够的信息.我使用的工厂方法是“真实的”方法吗?我一直在阅读有关抽象和具体工厂方法以及具体产品等的信息,但我仍然感到困惑,不知道如何实现它.任何帮助或指针将不胜感激!

java用factory_这是否使用Factory设计模式? (java)相关推荐

  1. 视频教程-跟汤老师学Java(第18季):设计模式-Java

    跟汤老师学Java(第18季):设计模式 南京大学软件工程硕士,全栈开发工程师,全栈讲师. 曾就职于中软国际.擎天科技.华为等公司,擅长Java开发.Web前端.Python爬虫.PHP等领域技术.从 ...

  2. java设计模式中不属于创建型模式_23种设计模式第二篇:java工厂模式定义:工厂模式是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式...

    23种设计模式第二篇:java工厂模式 定义: 工厂模式是 Java 中最常用的设计模式之一.这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式. 工厂模式主要是为创建对象提供过渡接口, ...

  3. java.lang.NoSuchMethodError: org.springframework.beans.factory.annotation.InjectionMetadata.init(L

    关于错误: java.lang.NoSuchMethodError: org.springframework.beans.factory.annotation.InjectionMetadata.&l ...

  4. java类多例_Java多例设计模式实例详解

    本文实例讲述了Java多例设计模式.分享给大家供大家参考,具体如下: 一.多例设计模式定义 多例设计模式就是存在多个对象实例,供外部应用裯用,比喻数据库连接池. 二.多例模式静态类图 三.多例模式代码 ...

  5. java 观察者模式示例_Java中的观察者设计模式-示例教程

    java 观察者模式示例 观察者模式是行为设计模式之一 . 当您对对象的状态感兴趣并希望在发生任何更改时得到通知时,观察者设计模式很有用. 在观察者模式中,监视另一个对象状态的对象称为Observer ...

  6. 模式——工程化实现及扩展(设计模式Java 版)

    -- 模式--工程化实现及扩展(设计模式Java 版) 王翔,孙逊著 ISBN 978-7-121-15638-0 2012年4月出版 定价:59.00元 16开 416页 内 容 简 介 设计模式不 ...

  7. 建造者模式 设计模式 Java实现 创建型

    ** 建造者模式 设计模式 Java实现 注意与工厂模式 对比 比较常用 ** 建造者-定义与类型 定义:将一个复杂对象的构建与他的表示分离,使得同样的构建过程可以创建不同的表示 用户只需指定需要建造 ...

  8. Java中有哪几种常见的设计模式

    Java中一般认为有23种设计模式,分别是: 1.创建型模式,五种:工厂方法模式,抽象工厂模式,单例模式,建造者模式,原型模式: 2.结构型模式,七种:适配器模式,装饰器模式,代理模式,外观模式,桥接 ...

  9. Java多线程相关知识【17】--设计模式--上下文模式(Context)

    文章目录 Java多线程相关知识[17]--设计模式--上下文模式(Context) 1. 问题的引入 2. 解决方法 1. 解决理论 2. 实操代码 上下文数据保存 上文 下文 调度者 测试上下文 ...

最新文章

  1. Android系统源码学习——ramdisk.img、system.img、userdata.img三个文件介绍
  2. r语言和python-r语言和python学哪个
  3. 关闭切换大小写时桌面提示
  4. Day5:python之函数(3)
  5. ACM-ICPC 2018 徐州赛区网络预赛 D. EasyMath
  6. Day 16 Linux 文件属性
  7. linux dns函数,Linux DNS (1)的基本概念
  8. DX中关于error C2664: “ID3DXEffect::SetMatrix”: 不能将参数 1 从“const char [17]”转换为“D3DXHANDLE”
  9. [基础知识]在PeopleSoft中SMTP设置不生效如何查找问题
  10. Python 通过打码平台实现验证码
  11. excel数据分析常用图表制作案例
  12. 配置引导工具Clover Configurator for Mac——可以产生创建修改四叶草EFI配置文件
  13. uniapp 微信小程序 生成海报
  14. 顺丰快递:请签收MySQL灵魂十连问
  15. 文字记录而已!!人民币直充/兑换PayPal美金
  16. elasticsearch query里面的slop选项
  17. kettle 用cmd bat来运行ktr和kjb
  18. 【路径规划】基于灰狼算法实现机器人栅格地图路径规划matlab源码
  19. [POI2007]立方体大作战tet
  20. 用JavaScript判断一个数是否是素数

热门文章

  1. Vue2 项目优化,压缩
  2. 敏捷迭代管理 --迭代回顾会
  3. OPPO应用商城wifi代理检测
  4. database honeypot by design
  5. 【翻译】使用CCF创建设备驱动程序
  6. 抖音记事本代码html,抖音表白程序制作教程 抖音表白代码制作分享-记事本文件...
  7. 进去mysql驱动器没有磁盘_驱动器中没有磁盘怎么回事 驱动器中没有磁盘的原因和解决办法...
  8. Pr视频中字幕怎么删除呢?
  9. python 爬取头条视频
  10. 自己动手搭建正向代理