黑马程序员技术交流社区

标题: 郑州校区--技术面试题之《工厂模式》 [打印本页]

作者: 我是楠楠    时间: 2017-8-16 15:51
标题: 郑州校区--技术面试题之《工厂模式》
本帖最后由 我是楠楠 于 2017-8-17 10:59 编辑

找工作,怎么才能拿到高薪offer,对于没有工作过、没有面试过的学员们,当天面试回来一定要总结。面试题一定要记下来,有笔试题就更好了,直接手机拍下来,晚上回来总结;不懂的可以问老师去群里面交流或者是查资料,把整理好的面试题共享,让其他小伙伴看到,每个人都这样做,日积月累我们就会有一个庞大的面试题库,受益你我他。一句话:面试——>总结——>分享。






(1):工厂模式主要是为创建对象提供过渡接口,以便将创建对象的具体过程屏蔽隔离起来,达到提高灵活性的目的。首先,创建二者的共同接口:
public interface Sender {
        public void Send();
}
其次,创建实现类:
public class MailSender implements Sender {
        @Override
        public void Send() {
               System.out.println("this is mailsender!");
        }
}

public class SmsSender implements Sender {
        @Override
        public void Send() {
               System.out.println("this is sms sender!");
        }
}

最后,建工厂类:
public class SendFactory {
        public Sender produce(String type) {
                if("mail".equals(type)) {
                       return new MailSender();
                } else if("sms".equals(type)) {
                       return new SmsSender();
                } else {
                       System.out.println("请输入正确的类型!");
                       return null;
                }
        }
}
我们来测试下:
public class FactoryTest {

        public static void main(String[] args) {
                SendFactoryfactory = new SendFactory();
                Sender sender= factory.produce("sms");
               sender.Send();
        }
}
输出:this is sms sender!


作者: baby14    时间: 2019-1-13 10:32
多谢分享




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2