`

java 设计模式学习笔记二 工厂模式Factory

阅读更多

工厂模式: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开发

    这份"图解java设计模式_学习笔记"是针对Java开发者深入理解和应用设计模式的重要资源。在这里,我们将深入探讨Java设计模式的核心概念、分类以及它们在实际开发中的应用。 设计模式分为三大类:创建型、结构型和...

    300Java设计模式部分学习笔记

    以下是一些在尚学堂300Java设计模式部分学习笔记中涉及的设计模式的知识点: 创建型模式: 创建型模式主要解决对象创建的问题,确保系统的灵活性和封装创建细节。学习笔记中提到了5种创建型模式: 1. 单例模式...

    图解Java设计模式笔记总结word版本.rar

    本资料“图解Java设计模式笔记总结word版本”聚焦于通过图文并茂的方式,深入浅出地解析各种设计模式。以下是基于这个主题的详细知识点讲解: 1. **设计模式的分类** - **创建型模式**:如单例(Singleton)、工厂...

    23种设计模式学习笔记及源码

    这个压缩包文件包含了23种设计模式的学习笔记和源码,旨在帮助开发者深入理解并熟练运用这些模式。以下是对每种设计模式的详细解释,以及它们在Java编程中的应用。 1. **单例模式**:确保一个类只有一个实例,并...

    Java设计模式尚硅谷笔记

    Java设计模式是软件开发中的重要概念,它是一种在特定情境下解决问题的经验总结,可以提高代码的可重用性、灵活性和可维护性。在Java编程中,设计模式被视为良好编程实践的重要组成部分,可以帮助开发者创建更加高效...

    JAVA设计模式的工厂模式文档和代码

    工厂模式是设计模式中的一种,属于创建型模式,它的主要目标是提供一个创建对象的接口,但让子类决定实例化哪一个类。这样,工厂模式使代码能够独立于实际的产品类型进行工作。 工厂模式的核心思想是通过一个共同的...

    java设计模式(收集整理,学习笔记)

    Java设计模式是软件开发中的一种重要思想,它是一种在特定情境下解决常见问题的模板,可以提高代码的可重用性、可维护性和灵活性。在Java中,设计模式主要分为三大类:创建型、结构型和行为型。下面将详细讨论在给定...

    23种设计模式分析学习笔记(Java版)

    设计模式是软件工程中的一种最佳实践,它提供了一种标准的解决方案来应对常见的设计问题。在Java编程中,理解并熟练运用设计模式对于编写可维护、可扩展的代码至关重要。本文将深入分析其中的23种设计模式,并通过...

    java23种设计模式,3套视频加1个ppt

    Java设计模式是软件开发中的重要概念,它是一种在特定情境下解决问题的经验总结,可以提高代码的可重用性、灵活性和可维护性。23种设计模式被广泛接受并分类为三大类:创建型模式(Creational Patterns)、结构型...

    设计模式学习笔记

    设计模式是软件工程中的一种最佳实践,它是在特定上下文中解决常见问题的经验总结。Java中的23种设计模式被广泛接受并应用于各种项目中,它们分为三类:创建型、结构型和行为型模式。 创建型模式关注对象的创建过程...

    JAVA与模式读书笔记。

    总之,《JAVA与模式》读书笔记提供了一个学习和应用设计模式的宝贵资源,对于Java开发者来说,理解和掌握这些模式不仅能够提升编程技能,也能使他们能够设计出更高效、更易于维护的软件系统。通过不断的实践和探索,...

    23中设计模式学习笔记.docx

    ### 23种设计模式学习笔记 #### 一、软件设计模式的概念与意义 **概念:** 软件设计模式(Software Design Pattern),又称设计模式,是一套被广泛采用、经过整理和分类的代码设计经验总结。它针对软件设计过程中...

    23种面向对象设计模式

    文档中的“23种设计模式学习笔记.doc”可能包含了对这23种模式的详细解释和实例,而“设计模式之我爱我家.doc”可能从一个更生活化的角度来阐述设计模式的概念。“软件23种设计模式,超级经典的.pdf”可能是对这些...

    设计模式之蝉

    在计算机科学领域,设计模式是软件工程中用于解决特定问题的一般性方案,它们是经过实践检验的最佳实践。这些模式被广泛应用于面向对象软件...设计模式的学习与应用是软件工程专业人员不断成长和进步的重要途径之一。

    结城浩《图解设计模式》笔记

    本笔记主要讲述了设计模式的基本概念和应用,包括 Iterator 模式、Adapter 模式、TemplateMethod 模式、FactoryMethod 模式和 Singleton 模式等。通过对这些设计模式的详细解释和示例代码的分析,我们可以更好地理解...

    台湾人写的设计模式笔记

    通过阅读这份笔记,读者不仅可以学习到设计模式的基本概念,还能了解到如何在Java环境中实际运用这些模式,提升编程技能。设计模式的学习和掌握是成为一名优秀程序员的必经之路,它们能帮助我们写出更高效、更灵活、...

    设计模式 笔记(附带代码)

    在软件开发领域,设计模式是经过验证的解决常见问题的有效方案。这些模式是经验丰富的开发者在面对特定设计问题时的智慧结晶,它们提供了一种...通过学习和应用这些设计模式,开发者可以提升自己的编程技巧和设计能力。

    设计模式总结-java与模式清晰版

    如果文件中包含Java代码示例,那么对于学习和实践设计模式将非常有帮助。 总的来说,这篇关于“设计模式总结”的资料旨在帮助Java开发者提升对设计模式的理解和应用能力,通过源码分析和实例讲解,使他们能够在实际...

    java版中国象棋源码-hello-design-pattern:设计模式学习笔记

    设计模式学习笔记,此项目参考《大话设计模式》,只能作为入门级设计模式学习 设计原则 职责单一原则 开放-封闭原则 依赖倒转原则 高层模块不依赖底层模块,两个模块都应该依赖抽象。抽象不依赖细节,细节依赖抽象。...

    设计模式笔记设计模式笔记

    设计模式是软件工程中的一种重要概念,它代表了在特定情境下解决问题的优秀实践和可重用解决方案。设计模式笔记是对这些模式的深入理解和应用记录,可以帮助开发者在面对复杂系统设计时,快速找到合适的结构和策略。...

Global site tag (gtag.js) - Google Analytics