文档章节

工厂模式

清尘V
 清尘V
发布于 2016/04/15 09:09
字数 214
阅读 43
收藏 0

行业解决方案、产品招募中!想赚钱就来传!>>>

定义接口:

package com.whereta.factory;

/**
 * Vincent 创建于 2016/4/15.
 */
public interface IPerson {

    void say();

}

定义实现类:

package com.whereta.factory;

/**
 * Vincent 创建于 2016/4/15.
 */
public class Man implements IPerson {
    public void say() {
        System.out.println("我是男人");
    }
}
package com.whereta.factory;

/**
 * Vincent 创建于 2016/4/15.
 */
public class Woman implements IPerson {
    public void say() {
        System.out.println("我是女人");
    }
}

定义工厂类:

package com.whereta.factory;

/**
 * Vincent 创建于 2016/4/15.
 */
public class PersonFactory {
    public static IPerson getMan(){
        return new Man();
    }

    public static IPerson getWoman(){
        return new Woman();
    }
}

测试:

package com.whereta.factory;

/**
 * Vincent 创建于 2016/4/15.
 * 工厂模式适应于实现了同一个接口的类的创建
 */
public class Main {
    public static void main(String[] args) {

        IPerson man = PersonFactory.getMan();
        man.say();
        IPerson woman = PersonFactory.getWoman();
        woman.say();

    }
}

输出结果:

Connected to the target VM, address: '127.0.0.1:51565', transport: 'socket'
我是男人
我是女人
Disconnected from the target VM, address: '127.0.0.1:51565', transport: 'socket'

Process finished with exit code 0

个人博客:http://www.whereta.com

清尘V

清尘V

粉丝 41
博文 107
码字总数 47780
作品 0
青岛
程序员
私信 提问
加载中
请先登录后再评论。

暂无文章

springboot 上传文件

package com.taven.demo;import org.springframework.web.bind.annotation.PostMapping;import org.springframework.web.bind.annotation.RequestMapping;import org.springframewor......

tavenpy
23分钟前
4
0
GitHub 标星 44k!史上最全技术面试手册!

整理:迷妹 大家好,我是为前端娱乐圈操碎了心的小迷妹,每天推荐一个小工具/源码,装满你的收藏夹,每天分享一个小技巧,让你轻松节省开发效率,实现不加班不熬夜不掉头发,是我的目标。 每...

祈澈菇凉
今天
0
0
Sublime Text3配置及控制台乱码[cmd杀死进程乱码/编译文件乱码]解决方法

Sublime Text3配置及控制台乱码[cmd杀死进程乱码/编译文件乱码]解决方法 参考文章: (1)Sublime Text3配置及控制台乱码[cmd杀死进程乱码/编译文件乱码]解决方法 (2)https://www.cnblogs...

osc_wl6d9wri
24分钟前
0
0
JS实现网页轮播(每隔5秒切换)

function onload() { <%=sb_js_onload.ToString() %> var timer = setInterval("jump_url()", 1000); } var arrurl = ["screen.aspx?code......

_Somuns
24分钟前
7
0
程序猿:论学习方式的重要性

大家都知道,做我们开发这行的,最核心的竞争力就是学习能力。技术一直在变化,框架一直在更新,学还是不学。 不学,你会落伍,学,太累了,根本学不过来。学习只要找对了方法,也没那么累。...

osc_zg8wy3xa
26分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部