工厂模式:factory
工厂模式就相当于创建实例对象的new,用于制造孩子的机器
创建对象的一般方法: Sample s=new Sample();
示例代码:
/**
* 2设计模式之工厂模式(factory)
*
* @time 下午05:10:37
* @author retacn yue
* @Email zhenhuayue@sina.com
*/
public class Factory {
//
public static Sample creator(int witch) {
if (1 == witch) {
return new SampleA();
} else if (2 == witch) {
return new SampleB();
}
return null;
}
}
/**
* 抽象工厂
*
* @time 下午05:24:39
* @author retacn yue
* @Email zhenhuayue@sina.com
*/
public abstract class Factory1 {
public abstract Sample creator();
public abstract Sample2 creator(String name);
}
public class SimpleFactory extends Factory1 {
@Override
public Sample creator() {
return new SampleA();
}
@Override
public Sample2 creator(String name) {
return new Sample2();
}
}
public class BombFactory extends Factory1 {
@Override
public Sample creator() {
return new Sample2A();
}
@Override
public Sample2 creator(String name) {
return new Sample2B();
}
}
public abstract class ForumFactory {
// 同步锁对象
private static Object initLock = new Object();
private static ForumFactory factory = null;
private static String className = "";
public static ForumFactory getInstance(Authorization authorization)
{
// 如果没授权f
if (null == authorization) {
return null;
}
// 使用单态模式
if (null == factory) {
synchronized (initLock) {
try {
// 动态转载类
Class clazz = Class.forName
(className);
factory = (ForumFactory)
clazz.newInstance();
} catch (ClassNotFoundException e) {
e.printStackTrace();
return null;
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
}
// 返回代理对象,用作权限控制
return null;
}
}
分享到:
相关推荐
Java设计模式学习笔记
总结了java开发中的21种设计模式,详解和例子,带书签的pdf格式,方便阅读!
学习Java设计模式的笔记,标注了其中重要的要点,如果有需要的小伙伴,自行下载哦
java设计模式的学习笔记,其中包含各种模式的代码实现
Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习...
图解java设计模式_学习笔记_java开发解压密码为twj123
Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记
设计模式学习笔记,分析了GOF的23种模式和类设计的原则
韩顺平_Java设计模式笔记.docx
Java基础 java学习笔记 Java Java基础Markdown学习笔记,可转换成PDF、Word等格式
我收集的设计模式的学习笔记,采用pdf格式,便于收藏和查看
根据《JAVA与设计模式》整理的笔记及示例代码。
Java JDK 7学习笔记 PDF
各个模式都有详细的例子C#学习笔记,打开就知道了
23中java设计模式结合生活中用例进行讲解以及spring源码中存在的设计模式才知道原来设计模式如此重要,视频教程链接如下:https://study.163.com/course/courseMain.htm?courseId=1209569921,或者直接在网易云搜索...
JAVA程序设计学习笔记.pdf
定义: 结构说明: 相关概念: 接口: 接口与抽象类的区别: 面向接口编程: 功能: 时序图: 优缺点: 代码阐释:
JAVA学习笔记JAVA学习笔记JAVA学习笔记JAVA学习笔记JAVA学习笔记JAVA学习笔记JAVA学习笔记JAVA学习笔记JAVA学习笔记
该文档为java设计模式的整理笔记,有助于大家更详细了解java设计模式