码迷,mamicode.com
首页 > 编程语言 > 详细

JAVA学习之工厂方法模式

时间:2014-09-09 10:32:28      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   color   io   使用   java   ar   for   

 

工厂方法模式的意义是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中。

核心工厂类不再负责产品的创建,这样核心类成为一个抽象工厂角色,仅负责具体工厂子类必须实现的接口,

这样进一步抽象化的好处是使得工厂方法模式可以使系统在不修改具体工厂角色的情况下引进新的产品。

原文链接http://tech.it168.com/a2009/0223/266/000000266400.shtml

 

package com.fylx;

//定义一个接口,人
interface People
{
    public void Speaking();
}

// 定义一个中国人群体
class China implements People
{
    public void Speaking()
    {

        System.out.println("我是中国人");
    }
}

// 定义一个日本人群体
class Japan implements People
{
    public void Speaking()
    {

        System.out.println("にほんごん");
    }
}

// 工厂类
class Factory
{
    public static People getInstance(String className)
    {
        People people = null;
        try
        {
            people = (People) Class.forName(className).newInstance();
        } catch (Exception e)
        {
            e.printStackTrace();
        }
        return people;
    }
}

public class FactoryMethod
{
    public static void main(String[] args)
    {

        People f = Factory.getInstance("com.fylx.Japan");
        if (f != null)
        {
            f.Speaking();
        }
    }
}

主要是接口的继承和反射的应用。在java中使用工厂方法的开源组件很多,比如Quartz,log4j,Hibernate等

JAVA学习之工厂方法模式

标签:style   blog   http   color   io   使用   java   ar   for   

原文地址:http://www.cnblogs.com/fylx/p/3961186.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!