美文网首页饥人谷技术博客
面向对象:类之间的关系

面向对象:类之间的关系

作者: _Jun | 来源:发表于2020-11-18 16:03 被阅读0次

1,关联关系(Dependence)

关联体现的是两个类之间语义级别的一种强依赖关系,有时也被称为“相识”或“引用”关系。这种关系比依赖更强、不存在依赖关系的偶然性、关系也不是临时性的,一般是长期性的,而且双方的关系一般是平等的。关联可以是单向、双向的。

例:

class Employee{
     private int eid;//员工编号
     private String name;//员工姓名
private Computer coumputer;//员工所使用的电脑
//....
}
class Computer{
}

依赖关系有三种情况:

1)A类是B类方法当中的一个参数;
2)A类是B类中的(某中方法的)局部变量;
3)A类向B类发送消息,从而影响B类发生变化;

2,泛化关系(Generalization)

表示类与类之间的继承关系,接口与接口之间的继承关系,或类对接口的实现关系。一般化的关系是从子类指向父类的。

例:

public class Person 
 {
    protected String name;
    protected int age;
    public void move() 
    {
        ……
    }
    public void say() 
    {
       ……
     }
 }
 public class Student extends Person 
 {
    private String studentNo;
    public void study() 
    {
        ……
   }
}

3,依赖关系(Dependence)

依赖就是一个类A使用到了另一个类B,而这种使用关系是具有偶然性的、临时性的、非常弱的,但是类B的变化会影响到类A。比如人出行需要坐车,这时候人和车之间的关系就是依赖。

例:

class A{
public B method(C c,D d){
E e = new E();
... 
B b = new B();
... 
return b; } }

4,聚合关系(Aggregation)

合是关联关系的一种特例,它体现的是整体与部分的关系。整体与部分之间是可分离的,它们可以具有各自的生命周期,部分可以属于多个整体对象,也可以为多个整体对象共享。比如公司和员工的关系,汽车类与引挚类,轮胎类之间的关系等等。

例:

class Car{
private Engine engine;//引擎
private Tyre[] tyres;//轮胎 
}

5,组合关系(Composition)

组合也是关联关系的一种特例,这种关系比聚合更强,也称为强聚合。它同样体现整体与部分间的关系,但此时整体与部分是不可分的,整体的生命周期结束也就意味着部分的生命周期结束。

例:

class Window{
private Menu menu;//菜单 
private Slider slider;//滑动条
private Panel panel;//工作区
}

6,实现关系(Implementation)

用来规定接口和实线接口的类或者构建结构的关系,接口是操作的集合,而这些操作就用于规定类或者构建的一种服务。

相关文章

  • 面向对象:类之间的关系

    1,关联关系(Dependence) 关联体现的是两个类之间语义级别的一种强依赖关系,有时也被称为“相识”或“引用...

  • java学习(六)-对象与类(一)——面向对象程序设计概述、用户

    面向对象程序设计概述 面向对象程序设计,简称OOP。 在类之间,最常见的关系有: 依赖("uses-a"):类A的...

  • 使用StarUml绘图概括

    1.类与类之间的关系: 在绘制类图前,先熟悉类与类之间的关系。面向对象语言中类与类之间关系共计六种,分别是继承、实...

  • 类图,对象图,时序图

    1.类图 1.类与类之间的关系: 在绘制类图前,先熟悉类与类之间的关系。面向对象语言中类与类之间关系共计六种,分别...

  • Python 入门 之 类的三大关系(依赖 / 组合/ 继承关系

    在面向对象的中,类与类之间存在三种关系:依赖关系、组合关系、继承关系。 1、依赖关系:将一个类的类名或对象当做参数...

  • [oop]IS-A,IS-LIKE-A,HAS-A的区别

    IS-A 代表类与类之间的继承关系 在知识表示、面向对象程序设计与面向对象设计的领域里,is-a英语,包含架构)指...

  • Java面向对象:类之间的关系

    类之间的关系有以下四种—— 一、关联关系 单向关联:从一个类中可以访问另一个类的成员,有这个类的引用。 双向关联:...

  • Week3(Boolan)

    基于对象的设计OOD--------->面向对象的编程OOP(类之间的关系) 复合Composition:设计模式...

  • C++笔记3--(Boolan)

    C++面向对象 类对象之间三种关系:组合(Composition),继承(Inheritance),委托(Dele...

  • 面向对象--总结

    内存分析贯穿全部 对象和类的概念 类(对象)之间的关系 面向对象的设计思想 class new 引用的概念 构造方...

网友评论

    本文标题:面向对象:类之间的关系

    本文链接:https://www.haomeiwen.com/subject/hluciktx.html