谈谈对面向对象的理解:
面向对象是一种编程模式,oop,他的工作重心在数据(对象)和对象的接口上,举个例子来说,比如一个木匠要造一个椅子,面向对象的木匠始终关心的是我要造的这个椅子,其次才是我使用什么工具;而非面向对象的木匠首先考虑的是使用的工具。
满足面向对象编程的语言,一般会提供类(也就是抽象),封装,继承,多态等语法来辅助我们进行面向对象编程。
封装是将一类事物的属性和行为抽象成一个类,实现属性私有化(也就是定义的private属性等),行为公有化(也就是定义的方法),这样提高了数据的隐秘性,使代码模块化。提高了代码的重用性(不用写重复代码)。
继承是将有相同属性和行为的事物抽象成一个父类,而子类在拥有父类属性和行为的同时,还有自己特有的属性和行为,进一步提高了代码的重用性。
如果说封装和继承为了使代码重用,那么多态就是为了实现接口重用。多态的作用是为了解耦(解除子类父类继承的耦合度),将父子关系的is-a,变成接口的has-a。简单来说,多态是允许父类引用指向子类对象(向上转型)。
面向对象
最新推荐文章于 2023-02-26 23:18:29 发布