23种设计模式(一)简单工厂模式(阁瑞钛伦特软件-九耶实训)

常说的设计模式是23种设计模式,分为3大类:

一、创建型模式5种:工厂方法、抽象工厂、单例、建造者、原型

二、结构型模式7种:适配器、代理、桥接、装饰者、外观、享元、组合

三、行为型模式11种:模板方法、解释器、策略、观察者、迭代器、职责链、命令、备忘录、状态、访问者、中介者。

当然有一部分模式中,还有一些小的变化,在未来的持续更新中,我们会一一列举,并以代码为主,去学习设计模式。

今天先说简单工厂模式:

简单工厂模式,不属于23种设计模式中的任何一种,但是,它是从工厂模式中简化而来的。

工厂模式中,重点需要抓住,“制造产品”这句话,就容易入门,从而进一步学习和理解。

首先,工厂要有产品,而工厂就是在创建产品,主要功能也是在创建产品,对于程序来说,是实例化对象的程序。

示例:假设“女娲造人”的神话传说中,产品是人类,分男人和女人。我们要事先准备好,人类,男人类和女人类,而这三个类将通过简单工厂方法创建出符合条件的对象。

abstract class Person{
private final String name;
private String sex;
public Person (String name){
this.name=name;
}
public String toString() {
return "我的名字是"+this.name+" i am "+sex;
}

public void setSex(String sex) {
this.sex = sex;
}
}
//男人
class Man extends Person{
{
setSex("Man");
}
public Man(String name){
super(name);
}
}
//女人
class Women extends Person{
{
setSex("Women");
}
public Women(String name){
super(name);
}
}

而简单工厂模式,就是根据对产品的选择,而生产对应商品的功能程序。

//简单工厂
class SimpleFactory{
public static Person getObject(String name,String sex) throws Exception{
if(sex.equalsIgnoreCase("man")){
return new Man(name);
}else if(sex.equalsIgnoreCase("women")){
return new Women(name);
}else{
throw new Exception("请输入正确的信息");
}
}
}

调用执行出效果的程序:

//创建一个男人叫迪卡
Person person= SimpleFactory.getObject("迪卡","man");System.out.println(person);
//创建一个女人叫萨瓦
person= SimpleFactory.getObject("萨瓦","women");System.out.println(person);

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值