说在前面
在学习了Java对象后,肯定还是有很多小伙伴们,会被一张硕大的UML图以及其中错综复杂的箭头给弄晕吧,更不要说实现需求,实现一些接口实现类中的各种方法了,更是让人觉得头顶一凉、无从下手。而即便是勉强完成后,也会被 NullPointerException 或其他一堆错误搞到崩溃。
那么,本文就是针对此些问题做一个比较详尽的解说,配合上我自己写的案例,来为大家详细讲解如何更高效地分析和实现需求。
(此文偏 新手向,对小白极友好,不是很高深的那种哈哈。本人也是小白,但在这方面有些许心得分享,希望帮到一些初入的伙伴!但能力有限,肯定有不足与浅薄之处,向大佬虚心求教啊!!!)
先从基础——对象的关系开始吧!
我们先理清一些常见的对象关系:
1. 聚合
聚合 是一种特殊的关联(Association) 关系,表示两个对象之间的所属关系。所有者对象称为聚合对象,它的类称为聚合类;从属对象成为被聚合类,它的类称为聚合类
被聚合类通常以集合的形式,即聚集在聚合类中,组成一个集合,并以该形式作为被聚合对象的属性。
public class Student {
private String name;
}
// 学生(Student)聚合于班级(Class)的学生群体(students集合)
public class Class {
private List<Student> students;
}
2. 组合
聚合是一种较弱的对象包含,而 组合(Composition) 则是一种较强的形式。组合关系中,包含对象 负责 被包含对象的创建和