程序设计模式:简单工厂模式。
三分钟讲解一个设计模式,今天要讲的是简单工厂模式。简单工厂模式其实是有一个重要的叫做工厂概念,工厂会根据客户端传进来的参数来动态的生成对应的产品。现在就简单来看一下。
直接携带,今天要实现的是相机的工厂。
·首先需要写相机的抽象类,抽象类有个person name,就是要拍摄的人的名字。有一个抽象的方法take photo,这个需要在此类里面实现。
·这里再写一个setter,设置一下person name。
·下面像有很多种类,比如现在以渣男为例,写一个渣男的类,重写一下他的follow 方法。
·同样的除了家当然还有复式,这里再写一个复式,同样的继承camera,这个抽象接口并实现follow 方法。
·这里需要着重实现一下工厂,工厂会用一个静态的方法来实现制作的过程。这有一个credit camera接口,注意这个接口比较签名,首先是static方法,这里返回的是抽象的接口gamer,不要去返回具体的接口,这样就没有起到工厂的作用。
·这里传入的对象是传入的是相机的参数、相机的名字,比如是家人就把佳能接口返回去,如果是复式就把复式相机返回回去。
·最后来做一个测试,测试这里可以看到用相机工厂首先创建了一个佳能的相机,再创建一个复式的相机。要拍的人这里设置一下,一个是范冰冰,一个是蔡徐坤,分别用他们的tiktok的方法就能打印出想要的结果。
·这里跑一下,编一下,成功打印加载相机在偷拍范冰冰,复制相机在偷拍蔡徐坤。
这样通过一个工厂来把两个产品集成在了一起,根据不同的传入参数来动态生成不同的对象。