1.设计原则:找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。
2.设计原则:针对接口编程,而不是针对实现编程。
3.设计原则:多用组合,少用继承
类之间的关系(箭头都是指向相对抽象的那个):
(是一个)is-a(英语:subsumption,包含架构)指的是类的父子继承关系,例如类D是另一个类B的子类(类B是类D的父类)。
(有一个)HAS-A关系是基于用法(即引用)而不是继承。如果类A中的代码具有对类B实例的引用,则“类A HAS-A类B”。
a has-a b,说明a类对象具有若干b类对象作为其成员。比如“飞机”有”翅膀“。
私有继承实现has-a关系,一是从对象关系上来说是不合理的,写程序的人知道,但是看程序的人就会误会了。二是,用私有继承,比如a中私有继承了 b,那么b的所有成员和函数在a中都是private,不能直接访问的了,会对后面的使用造成不方便。
(实现)implements 就是实现接口interface
版权声明:本文为jiangbangtian原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。