设计原则1 单一原则
高内聚,低耦合
设计原则2 开闭原则 OCP(重要)
对谁开放,对谁关闭
对扩展开放,对修改关闭
设计原则3 里氏替代原则
父类可以出现的地方,子类也可以出现(继承多态)
设计原则4 依赖倒置原则(重要)
核心是面向接口编程
设计原则5 接口分离原则
建立单一接口,不要建立庞大臃肿的接口,尽量细化接口,接口中的方法尽量少
设计原则6 迪米特法则
尽量降低类与类之间的耦合
两个类之间不必彼此通信
设计原则7 组合聚合复用原则
优先使用对象组合,而不是类继承(要尽量使用合成和聚合,尽量不要使用继承)
类与类之间的关系 1 继承、实现
类与类之间的关系 2 依赖和关联
依赖关系
一个类A使用到另一个类B,但是这种使用关系是具有偶然性、临时性、是非常弱的。但是类B的变化会影响到类A
类B作为类A的方法参数(或者==局部变量==存在)
关联关系
比依赖关系强,必然的,长期的,强烈的
类B作为==成员变量==形成存在于类A中
一对一、一对多、多对多关系
package oop2.demo03;
import java.util.ArrayList;
import java.util.List;
public class Test03 {
}
//人类
class People{
//体现了人类与身份证类一对一的关系
private Sfz s = new Sfz();
}
//身份证类
class Sfz{
}
//===========================================================================
//学生类
class Student{
private Clazz c = new Clazz(); //一个学生在一个班级中
}
//班级类
class Clazz{
private Student[] arr = new Student[20]; //一个班级里有多个学生 一对多关系
//或者
private List<Student> list= new ArrayList<>();
}
//====================================================================================多对多
//教师类
class Teach{
//一个老师可以带多个课程
private List<Cou> list = new ArrayList<>();
}
//课程类
class Cou{
//一个课程可以被多个老师带
private List<Teach> list = new ArrayList<>();
}
类与类之间的关系 3 聚合、组合
关联关系的细分出来的聚合、组合,关联关系的一些特例(一对多的具体分析)
聚合
整体和部分的关系。整体部分可分离,整体的生命周期和部分的生命周期不同
(例如:计算机与CPU、公司与员工、班级与学生的关系)
组合
整体和部分的关系。整体部分不可分离,比聚合更强,更加紧密
原创文章:https://www.qqhhs.com,作者:起航®,如若转载,请注明出处:https://www.qqhhs.com/50.html
版权声明:本站提供的一切软件、教程和内容信息仅限用于学习和研究目的,请于下载的24小时内删除;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络收集整理,如果您喜欢该程序和内容,请支持正版,购买注册,得到更好的正版服务。我们非常重视版权问题,如有侵权请邮件与我们联系处理。敬请谅解!