`

设计模式学习笔记——简单概念

阅读更多

纯属笔记性质 摘要加一些个人的理解 作为备忘 方便自己以后回过头了看 有理解不对的地方 希望可以得到纠正 也希望可以一起讨论

概要

●对接口编程而不要对实现编程

●与继承相比,更应采用对象组合(将多个对象封装在一个对象中)

设计模式3

●创建型模式(Creational pattern):为你创建对象,而不必由你直接实例化对象,可以在确定需要创建哪些对象时获得更大的灵活性

●结构性模式(Structural pattern):有助于将对象组合成更大的结构,例如复杂的用户界面和统计数据

●行为型模式(Behavioral pattern):有助于定义系统中对象之间的通信,以及在一个复杂的程序中如何控制流程

 

UML

+表示公共

-表示私有

#表示保护

斜体表示抽象

下划线表示静态

 

继承  单箭头  子类指向父类

接口  虚线单箭头   实现类指向接口

组合  单线   注明0...1等互相关系

注释  折角矩形或任意方式

分享到:
评论

相关推荐

    学习笔记——资料

    【Java学习笔记——全面解析】 Java作为一种广泛应用的高级编程语言,是软件开发领域的核心力量。这份"学习笔记——资料"涵盖了Java学习的各个方面,旨在帮助初学者和有经验的开发者巩固基础,提升技能。以下是对这...

    Java学习笔记——良葛格

    【Java学习笔记——良葛格】是一份由爱好者良葛格整理的Java学习资料,主要以PDF格式呈现,虽然可能不完整,但包含了丰富的Java编程基础知识和实践技巧,旨在为初学者提供一个学习和参考的平台。以下是笔记中可能...

    jsp学习笔记——初学者的选择

    【JSP学习笔记——初学者的选择】 JSP(JavaServer Pages)是JavaEE平台中用于构建动态网页的应用技术。作为初学者,理解JSP的基本概念和技术特性至关重要。 1. **为何选择JSP?** JSP的出现主要是为了解决...

    VxWorks学习笔记——实战之在VMWare上安装VxWorks操作系统.rar

    总的来说,这份“VxWorks学习笔记——实战之在VMWare上安装VxWorks操作系统”文档将深入浅出地介绍如何在虚拟环境中搭建VxWorks开发环境,以及如何利用其强大的实时性、安全性、多任务处理等功能。对于想要涉足...

    C++学习笔记——继承和组合

    这两种机制都是面向对象编程中用于实现代码重用的重要手段,但它们在设计模式、实现细节以及适用场景上存在显著差异。 ### 一、继承 #### 1. 定义与特点 继承是一种使一个类(子类)能够继承另一个类(父类)的...

    重新整理后的Oracle OAF学习笔记——离线版本

    - **ebs_build_*.html** 文件(如ebs_build_control.html、ebs_build_model.html、ebs_build_view.html)可能讨论了OAF的构建过程,包括控制、模型和视图的构建,这是MVC设计模式的体现。 - **ebs_page.html**:...

    Java NIO学习笔记——ByteBuffer用法

    ByteBuffer的用法是Java NIO学习中的核心内容。 首先,我们了解下ByteBuffer的基本概念。ByteBuffer是一个字节缓冲区,可以存储字节序列。在NIO中,所有的数据读写都通过缓冲区进行,ByteBuffer与其他类型的Buffer...

    FPGA自学笔记——设计与验证jmb

    逻辑设计阶段,HDL语言用于描述数字系统的逻辑功能,读者需要掌握基本的语句结构和设计模式。 FPGA设计工具,如Xilinx的Vivado、Intel的Quartus II或 Mentor Graphics的ModelSim等,在设计流程中扮演着重要角色。...

    个人学习的java笔记——思维导图

    这份"个人学习的java笔记——思维导图"是作者学习Java过程中的总结,通过思维导图的形式,将复杂的概念和知识结构化,便于理解和记忆。下面,我们将深入探讨其中涉及的一些关键知识点。 1. **基础语法**:Java的...

    JSP复习笔记——第11章 JSP 构架和MVC设计模式

    在IT行业中,JSP(JavaServer ...总之,JSP结合MVC设计模式为Web应用开发提供了一种强大而灵活的框架,通过案例中的“mvc+dao实现留言管理程序”,我们可以学习如何在实际项目中运用这些概念,提升我们的开发技能。

    C++笔记——iNotes

    C++是一种强大的、通用的...这些只是C++编程中的一小部分知识点,"C++笔记——iNotes"可能会涵盖更多细节,如内存管理、异常处理、模板元编程、设计模式等。通过深入学习并结合实践,你可以成为一名熟练的C++开发者。

    Thinking in Java 自学笔记——第一章 对象导论

    Thinking in Java 自学笔记——第一章 对象导论 本章节总结了面向对象程序设计(Object-oriented Programming, OOP)的基本概念和原则,以帮助读者更好地理解 Java 编程语言。以下是对标题、描述、标签和部分内容的...

    C#6.0学习笔记 从第一行C#代码到第一个项目设计 随书源码

    本学习笔记旨在帮助初学者从零基础开始掌握C#编程,逐步进阶到能够独立设计项目。随书源码为学习提供了实践操作的平台,确保理论与实践相结合。 一、C# 6.0基础语法 1. 变量与数据类型:C#支持多种数据类型,包括...

    linux内核笔记——进程管理_80386基础

    ### Linux内核笔记——进程管理_80386基础 #### 1. 80386保护模式下的进程管理基础知识 对于初学者来说,Linux内核的学习之路充满了挑战,尤其是在面对内核启动代码时,复杂的AT&T汇编语法与保护模式下的概念常常...

    Java入门学习笔记

    "Java入门第三季学习笔记"可能涵盖了更多高级话题,如反射、注解、设计模式和Java库的使用。反射允许程序在运行时检查类、接口、字段和方法的信息,提供了更大的灵活性。注解是一种元数据,可以用来提供编译器或运行...

    一点学习笔记——关于嵌入式学习的起点

    这篇学习笔记主要关注的是在嵌入式领域中初学者应该掌握的基础知识,尤其是与Linux环境和C语言相关的技能。 首先,从Linux环境和命令开始。Linux是嵌入式系统常用的操作系统,常见的发行版有Debian、Ubuntu和Redhat...

    HeadFirst设计模式笔记

    在本笔记中,我们将探讨设计模式的核心概念,并通过具体的例子——`PizzaIngredientFactory`来实践这些模式。 首先,设计模式分为三大类:创建型、结构型和行为型模式。创建型模式关注对象的创建,如单例模式...

    JAVA学习笔记第七天——示例代码Day07

    在"JAVA学习笔记第七天——示例代码Day07"的压缩包中,你可以找到相关的示例代码,包括这些概念的实际应用。通过阅读和实践这些代码,你将更深入地理解访问修饰符、final关键字、接口以及接口和类的关系在实际编程中...

    AI学习笔记——卷积神经网络(CNN)

    卷积神经网络(CNN)是人工智能领域中一种重要的深度学习模型,特别适用于图像识别和处理任务。相较于传统的全连接神经网络,CNN具有更好地捕获图像特征的能力,这得益...理解并掌握这些基本概念是深入学习CNN的关键。

Global site tag (gtag.js) - Google Analytics