IS-A 和 HAS-A
Posted 逸足天涯
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IS-A 和 HAS-A相关的知识,希望对你有一定的参考价值。
IS-A关系
IS-A就是说:一个对象是另一个对象的一个分类。
下面是使用关键字extends实现继承。
public class Animal{ } public class Mammal extends Animal{ } public class Reptile extends Animal{ } public class Dog extends Mammal{ }
分析以上示例中的IS-A关系,如下:
- Mammal IS-A Animal
- Reptile IS-A Animal
- Dog IS-A Mammal
HAS-A 关系
HAS-A代表类和它的成员之间的从属关系。这有助于代码的重用和减少代码的错误。
public class Vehicle{} public class Speed{} public class Van extends Vehicle{ private Speed sp; }
Van类和Speed类是HAS-A关系(Van有一个Speed),这样就不用将Speed类的全部代码粘贴到Van类中了,并且Speed类也可以重复利用于多个应用程序。
以上是关于IS-A 和 HAS-A的主要内容,如果未能解决你的问题,请参考以下文章
Java千百问_05面向对象(006)_is-a,has-a,like-a是什么
java中的继承(IS-A)与组合(HAS-A)关系[重复]