理解几个面向对象的概念
一、抽象(Abstraction)
简单的说,抽象(Abstraction)就是过滤掉对象一部分特性和操作直到只剩下你所需要的属性和操作。也就是说,针对你要解决的问题,哪些属性和操作是必须的,哪些属性和操作对解决问题是没有用的,只留下对解决问题有的属性的操作。对建模者来说,抽象是最重要的技术的,要搞清楚什么应该加入模型中,什么应该舍去。
二、继承(inheritance)
对象的继承代表is a的关系,如果对象A和B,可以描述是B是A,则表明B可以继承A。继承者可以理解为对被继承者的特殊化,它除了具备被继承者的特性和操作外,还有自已的个性。继承者可以完全替换被继承者,反之则不成立。
三、多态(Polymorphism)
多态表示不同对象可以执行相同的操作,但要由他们自已决定操作该做什么。多态可以让建模者用客户熟悉的语言和术语与客户交流。
多态的原理是当方法被调用时,无论对象是否被转换为其父类型,都只有位于继承链最末端的方法实现会被调用,也就是说,虚方法是按照运行时类型而非编译时类型进行动态绑定调用的。
四、封装(Encapsulation)
当一个对象执行自已的操作时,对外界隐藏的操作细节,封装有助于减小某些不利因素的影响,在一个系统中,各对象以各种方式相互依赖,如果一个对象出现故障,我们只需要修改出现故障的对象,而不需要改变其他对象。
浙公网安备 33010602011771号