普通工厂模式

/**
 * 普通工厂方法:每个对象都会有一个工厂类进行生产,例如小米手机由纬创公司代工生产,苹果手机由富士康代工生产,也就是每个工厂只会生产一种对象
 * 模式特点:1.拥有一个对象接口(手机接口)和该对象接口的几个实现类(小米手机,苹果手机)
 *        2.拥有一个工厂接口(手机工厂)和该接口的几个实现类(纬创工厂,富士康工厂)
 */

//创建手机接口
public interface Phone {
    void call();
}
//苹果手机
public class Iphone implements Phone {
    @Override
    public void call() {
        System.out.println("使用苹果手机打电话");
    }
}
//小米手机
public class MIPhone implements Phone {
    @Override
    public void call() {
        System.out.println("使用小米手机打电话");
    }
}
//工厂接口
public interface PhoneFactory {
    Phone createPhone();
}
//生产小米手机的工厂如纬创
public class MiPhoneFactory implements PhoneFactory {
    @Override
    public Phone createPhone() {
        return new MIPhone();
    }
}
//生产苹果手机的工厂,如富士康
public class IPhoneFactory implements PhoneFactory {
    @Override
    public Phone createPhone() {
        return new Iphone();
    }
}
class test{
    public static void main(String[] args) {
        PhoneFactory iPhoneFactory = new IPhoneFactory();
        Phone iphone = iPhoneFactory.createPhone();
        iphone.call();
        PhoneFactory miPhoneFactory = new MiPhoneFactory();
        Phone miPhone = miPhoneFactory.createPhone();
        miPhone.call();


    }
}

 

转载于:https://www.cnblogs.com/yangxiaohui227/p/10905136.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值