zoukankan      html  css  js  c++  java
  • 简单工厂模式

        简单工厂模式是类的创建模式,又叫做静态工厂方法,简单工厂模式是一个工厂对象决定创建出哪一个产品类的实例。
    下面是个人的理解,在这个简单的工厂模式中,工厂类显然是核心所在,作为工厂类,它的方法是一个静态的方法,所以这个类也就是静态的类,而这个类里面的方法是一个返回类型为类类型,参数类型为字符串类型的方法,这样的话,当我们在测试类测试的时候,我们可以实现传入一个类名就可以返回一个类的功能,而在接口方面,我们定义了一个抽象类,同一种类型的不同具体实现,最后返回的时候都是归为这个接口的,下面是代码实现;
    登录总接口类
     
    package simpleFactory;
    
    public interface Login {
          public boolean verify(String name, String password);
    }
    

      域认证登录

    package simpleFactory;
    
    public class Domain implements Login{
    
          public Domain() {
                // TODO Auto-generated constructor stub
          }
          public boolean verify(String name, String password){
                System.out.println("这是域认证");
                return true;
          }
    
    }
    

      密码认证登录

    package simpleFactory;
    
    public class Password implements Login{
    
          public Password() {
                // TODO Auto-generated constructor stub
          }
          public boolean verify(String name, String password){
                System.out.println("密码认证");
                return true;
          }
    
    }
    核心工厂类
     
    package simpleFactory;
    
    public class loginManager {
    
          public loginManager() {
                // TODO Auto-generated constructor stub
          }
          public static Login factory(String type){
                if(type.equals("Domain"))
                      return new Domain();
                else if(type.equals("Password"))
                      return new Password();
                else
                      throw new RuntimeException("没有找到登录类型");
          }
    }
    

      测试类

    package simpleFactory;
    
    public class Test {
    
          public Test() {
                // TODO Auto-generated constructor stub
          }
          public static void main(String[] args){
                String loginType = "Password";
                String name = "name";
                String password = "password";
                Login login = loginManager.factory(loginType);
                boolean issuccess = login.verify(name,password);
                if(issuccess == true){
                      System.out.println("passwordTYpe");
                }
                else
                      System.out.println("fail");
          }
    
    }
        下面是个人的理解;
    作为简单工厂模式,我们可以设想为一个玩具工厂,而接口就是你这个产品的设计图纸,这种可以说设计玩具,像是洋娃娃和小汽车,而作为核心的工厂类就相当于玩具本身,老板说,我要生产一个洋娃娃,然后把这个命令传下去,工厂接受到这个命令之后,就开始照着设计图纸做玩具了,最后返回了一个实体的洋娃娃。这就是我理解的简单工厂模式。
     
  • 相关阅读:
    关于slmgr命令
    .msi安装包安装方法(安装错误2503和2502)
    BIOS相关
    C和C#的区别
    关于del命令
    win8快捷键
    Windows 8 系统快捷键热键列表收集
    Android开发环境搭建
    关于Android sdkmanager目录结构的总结
    关于eclipse新建项目问题
  • 原文地址:https://www.cnblogs.com/zxx123/p/8593087.html
Copyright © 2011-2022 走看看