From 94235489f6eb87e7e3c0b39e982905516788a8b2 Mon Sep 17 00:00:00 2001 From: CyC2018 <1029579233@qq.com> Date: Fri, 6 Apr 2018 11:40:58 +0800 Subject: [PATCH] auto commit --- notes/面向对象思想.md | 12 +++++------- pics/123bdf81-1ef5-48a9-a08c-2db97057b4d2.png | Bin 0 -> 5120 bytes pics/1be8b4b0-cc7a-44d7-9c77-85be37b76f7d.png | Bin 0 -> 6144 bytes pics/518f16f2-a9f7-499a-98e1-f1dbb37b5a9a.png | Bin 0 -> 3072 bytes pics/5341d726-ffde-4d2a-a000-46597bcc9c5a.png | Bin 0 -> 5120 bytes pics/eb4a7007-d437-4740-865d-672973effe25.png | Bin 0 -> 4096 bytes 6 files changed, 5 insertions(+), 7 deletions(-) create mode 100644 pics/123bdf81-1ef5-48a9-a08c-2db97057b4d2.png create mode 100644 pics/1be8b4b0-cc7a-44d7-9c77-85be37b76f7d.png create mode 100644 pics/518f16f2-a9f7-499a-98e1-f1dbb37b5a9a.png create mode 100644 pics/5341d726-ffde-4d2a-a000-46597bcc9c5a.png create mode 100644 pics/eb4a7007-d437-4740-865d-672973effe25.png diff --git a/notes/面向对象思想.md b/notes/面向对象思想.md index 02c7222d..7f67505e 100644 --- a/notes/面向对象思想.md +++ b/notes/面向对象思想.md @@ -21,8 +21,6 @@ ## S.O.L.I.D - - | 简写 | 全拼 | 中文翻译 | | :--: | :--: | :--: | | SRP | The Single Responsibility Principle | 单一责任原则 | @@ -206,31 +204,31 @@ public class Music { 用来描述继承关系,在 Java 中使用 extends 关键字。 -

+

## 实现关系 (Realization) 用来实现一个接口,在 Java 中使用 implement 关键字。 -

+

## 聚合关系 (Aggregation) 表示整体由部分组成,但是整体和部分不是强依赖的,整体不存在了部分还是会存在。 -

+

## 组合关系 (Composition) 和聚合不同,组合中整体和部分是强依赖的,整体不存在了部分也不存在了。比如公司和部门,公司没了部门就不存在了。但是公司和员工就属于聚合关系了,因为公司没了员工还在。 -

+

## 关联关系 (Association) 表示不同类对象之间有关联,这是一种静态关系,与运行过程的状态无关,在最开始就可以确定。因此也可以用 1 对 1、多对 1、多对多这种关联关系来表示。比如学生和学校就是一种关联关系,一个学校可以有很多学生,但是一个学生只属于一个学校,因此这是一种多对一的关系,在运行开始之前就可以确定。 -

+

## 依赖关系 (Dependency) diff --git a/pics/123bdf81-1ef5-48a9-a08c-2db97057b4d2.png b/pics/123bdf81-1ef5-48a9-a08c-2db97057b4d2.png new file mode 100644 index 0000000000000000000000000000000000000000..3c248d3701e3cded8b2c0ae27bd8af55424cca77 GIT binary patch literal 5120 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 literal 0 HcmV?d00001 diff --git a/pics/1be8b4b0-cc7a-44d7-9c77-85be37b76f7d.png b/pics/1be8b4b0-cc7a-44d7-9c77-85be37b76f7d.png new file mode 100644 index 0000000000000000000000000000000000000000..6ba8797b37315dfd74ad7a321f493c55aa86c598 GIT binary patch literal 6144 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 literal 0 HcmV?d00001 diff --git a/pics/518f16f2-a9f7-499a-98e1-f1dbb37b5a9a.png b/pics/518f16f2-a9f7-499a-98e1-f1dbb37b5a9a.png new file mode 100644 index 0000000000000000000000000000000000000000..3a1010b926a56f005ccf1534eccba57db61275ee GIT binary patch literal 3072 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 literal 0 HcmV?d00001 diff --git a/pics/eb4a7007-d437-4740-865d-672973effe25.png b/pics/eb4a7007-d437-4740-865d-672973effe25.png new file mode 100644 index 0000000000000000000000000000000000000000..e2a0faabe90ecc91e2bb735a489ea5bbb0981b96 GIT binary patch literal 4096 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 w2Mp3D2!lc1VK5K`|9^-`y0;d2RxDo6#xJL literal 0 HcmV?d00001