Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1698289
  • 博文数量: 210
  • 博客积分: 10013
  • 博客等级: 上将
  • 技术积分: 2322
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-25 15:56
文章分类

全部博文(210)

文章存档

2011年(34)

2010年(121)

2009年(37)

2008年(18)

我的朋友

分类: Java

2011-03-16 15:44:06

简单工厂模式是最原始的一个设计模式,但是用处很广,其uml类图如下:

 

package com.utstar.pattern.simplefactory;

public interface SampleInterface {
    public abstract void print(String s);
}


package com.utstar.pattern.simplefactory;

public class Implement implements SampleInterface{
    public void print(String s){
        System.out.println(s);
    }
}


package com.utstar.pattern.simplefactory;

public class Implement2 implements SampleInterface{
    public void print(String s){
        System.out.println(s);
    }
}


package com.utstar.pattern.simplefactory;

public class Factory{
    public static SampleInterface getSample(int option){
        if(option==1)
            return new Implement();
        else
            return new Implement2();
    }
}


package com.utstar.pattern.simplefactory;

/**
 * 简单工厂模式定义:提供一个创建实例对象的功能,而无需关注其具体实现,被创建的实例可以使具体类
 * 也可以是接口、抽象类。
 *
 * @author HZ20232
 *
 */

public class TestFactory{
    public static void main(String args[]){
        SampleInterface face = new Implement();
        face.print("虽然也有接口和具体实现类,但是只用到了接口的多态功能,java面向接口编程的封装隔离并没有体现。");
        
        SampleInterface test = Factory.getSample(1);
        test.print("这里用到了封装隔离,具体实现类可以有多个。");
        test = Factory.getSample(2);
        test.print("这里用到了封装隔离,具体实现类可以有多个。");
    }
}


阅读(2040) | 评论(3) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2011-04-03 15:16:22

好东西,学习

chinaunix网友2011-04-03 15:16:18

好东西,学习

chinaunix网友2011-03-27 20:11:46

很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com