面向对象编程-4-组合
程序员文章站
2024-03-15 21:13:18
...
组合
和继承类似, 组合也是一种表达类之间关系的方式, 也是能够达到代码重用的效果.
例如表示一个学校:
public class Student {
String name;
String Sex;
int age;
int Studentnum;
}
public class Teacher {
String name;
String Sex;
int age;
String subject;
}
public class School
{
public Student[] students;
public Teacher[] teachers;
}
组合并没有涉及到特殊的语法(诸如 extends 这样的关键字), 仅仅是将一个类的实例作为另外一个类的字段.
这是我们设计类的一种常用方式之一.
组合表示 has - a 语义
可以理解为:学校包含若干教师和学生;;
继承表示 is - a 语义
可以理解为:猫也是一种动物 ,鸟也是动物
注意体会两种语义的区别