单例模式:一定要注意定义私有的构造函数,而且考虑到多线程环境,一定要在getInstance方法上加同步,当然如果定义属性的时候就已经new出单例对象就不会出现同步问题,具体例子,网上很多了。
工厂模式:简单工厂模式直接返回具体的对象实例了;抽象工厂模式返回的是抽象的定义,具体返回的对象由其子类去实现。
代理模式:简单代理模式,要定义接口、代理类、被代理类。相当于依赖注入,把被代理的对象作为一个属性放到代理对象中,然后需要调用被代理对象的方法时可以对其进行一些封装,例如:要叫老板审批,代理者秘书就可以在审批前后先做一些记录然后再调用老板的审批操作。
动态代理模式,主要利用java.lang.reflect包中的InvocationHandler和Proxy.newProxyInstance来实现的。定义一个被代理类实现一个接口,然后定义个代理类实现InvocationHandler,并且注入一个对象属性(也就是被代理类),这样在代理类的invoke方法中就可以对被代理类的实现进行封装。
调用如下:
RealSubject realSubject = new RealSubject();
Subject proxySubject = (Subject) Proxy.newProxyInstance(Subject.class.getClassLoader(),
new Class[] { Subject.class }, new ProxyHandler(realSubject));
System.out.println("===Without Proxy===");
doSomething(realSubject);
System.out.println("===With Proxy======");
doSomething(proxySubject);
适配器模式:定义一个接口,然后定义一个抽象类去实现这个接口并且实现空方法,定义几个子类继承该抽象类且覆盖父类中的某些方法达到本子类应有的功能。
模板模式(Templete):是先定义一个抽象类,实现一些方法,在这些方法中需要调用一个抽象方法,且这个抽象方法必须由子类决定实现的功能,定义多个子类去实现父类的抽象方法。感觉跟适配器模式很像,不一样的是适配器模式的抽象类都实现了所有的空方法,总的来说,还是抽象类跟接口直接的巧妙结合。
学的不深,先把理解的给加上,以后有空再上代码~~~
分享到:
相关推荐
### Java设计模式学习笔记 #### 1. 设计模式的七大原则 ##### 1.1 设计模式的目的 设计模式是一种解决特定问题的通用解决方案,它可以帮助开发人员编写出更高质量、更容易维护和扩展的代码。设计模式的目标在于...
在学习Java设计模式时,掌握其概念、应用、优点和缺点非常重要。设计模式是软件开发中经常使用的一种通用解决方案模板,用于解决特定上下文中的常见问题。它们源于设计模式的研究,通常被认为是软件设计中的最佳实践...
Java设计模式是软件开发中的重要概念,它是一种在特定情境下解决问题的经验总结,可以提高代码的可读性、可维护性和可复用性。这些模式是面向对象编程中的一种最佳实践,通过标准化的方式处理常见的设计问题。下面...
文档中描述的是Java设计模式学习笔记,目前涉及了7种设计模式,但没有具体指明这7种模式是什么,计划后续增加更多的模式。虽然文件内容中存在OCR扫描的识别错误,但不影响我们从整体上把握设计模式的脉络和学习方法...
定义: 结构说明: 相关概念: 接口: 接口与抽象类的区别: 面向接口编程: 功能: 时序图: 优缺点: 代码阐释:
尚硅谷Java设计模式学习笔记主要涵盖了软件工程中非常重要的设计模式知识,以及结合框架源码的深入剖析,旨在帮助学习者更好地理解和运用设计模式解决实际开发中的问题。Java设计模式是Java开发人员必备的技能之一,...
这份"图解java设计模式_学习笔记"是针对Java开发者深入理解和应用设计模式的重要资源。在这里,我们将深入探讨Java设计模式的核心概念、分类以及它们在实际开发中的应用。 设计模式分为三大类:创建型、结构型和...
Java Design PatternsJava 设计模式学习笔记,简单易懂,每个模式都有相应的代码示列,帮助学习理解。在线阅读地址:设计原则创建型模式作用:将创建与使用代码解耦结构型模式作用:将不同的功能代码解耦桥接模式...
通过以上内容,我们可以看到韩顺平老师的Java设计模式笔记涵盖了设计模式的基础概念、常见面试题解析、设计原则等内容,并通过具体案例来阐述设计模式的实际应用价值,旨在帮助学习者深刻理解并掌握设计模式,从而在...
这份"根据《JAVA与设计模式》整理的笔记及示例代码"涵盖了Java语言和设计模式的核心概念,旨在帮助开发者理解和应用这些模式。 一、设计模式的基本概念 设计模式是对在特定情境下软件设计问题的解决方案的一种描述...
读书笔记:尚硅谷Java设计模式图解+框架源码剖析学习笔记
而这份笔记则是将书中的概念转化为Java语言的实例,提供了学习设计模式的实战应用。 首先,设计模式可以大致分为三大类:创建型模式、结构型模式和行为型模式。创建型模式涉及对象的创建机制,结构型模式关注的是类...
设计模式作为软件工程中的一项核心技术,它是一套被广泛认可的用于解决特定问题的最佳实践。...通过阅读这些设计模式学习笔记和研究源码案例,开发者可以更快速地掌握设计模式的实际应用,从而提升开发水平和软件质量。
Java设计模式是软件开发中的一种最佳实践,它们是为了解决特定场景下的设计问题而发展起来的。23种设计模式被广泛应用于提高代码的可重用性、可读性、可维护性和灵活性。韩顺平老师的Java设计模式课程通过生活中的...
本课程是使用Java来讲解设计模式,考虑到设计模式比较抽象,授课采用 图解+框架源码分析的方式 1) 内容包括: 设计模式七大原则(单一职责、接口隔离、依赖倒转、里氏替换、开闭原则、迪米特法则、合成复用)、UML...
Java的高级特性,如泛型、注解、反射、设计模式等,也是高级程序员需要掌握的知识点。学习笔记中会深入讲解这些概念的应用场景和优势,以及它们对软件设计和开发带来的影响。 Java EE是企业级Java技术的集合,涵盖...
《尚硅谷_韩顺平_图解Java设计模式》是一份详尽的Java设计模式学习资料,由知名教育机构尚硅谷的讲师韩顺平精心编撰。这份笔记全面覆盖了设计模式的重要概念、应用场景以及实战技巧,是Java开发者学习和复习设计模式...
【Java学习笔记Markdown版】是针对Java初学者和进阶者的一份详尽教程,以Markdown格式编写,便于阅读和整理。Markdown是一种轻量级的标记语言,它允许用户使用易读易写的纯文本格式编写文档,然后转换成结构化的HTML...
Java实现23种设计模式学习笔记