真正意义上的面向对象

简介: 真正意义上的面向对象

面向对象的基础

       面向对象的基础是抽象,为什么这样说呢?因为抽象是从众多的事物中抽取出共同的、本质性的特征,而舍弃其非本质的特征的过程,简单来说是把一些公共性和一致的事物放到一起,对应到计算机中是把属性和方法抽出来形成了一个类,这个类也就是封装。抽象是一个过程而封装是抽象后的一个产物。

面向对象的三大特征

       封装:封装即隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读和修改的访问级别。简单来说是把方法和属性放到一个类中,用来为其他类提供服务。

       继承:继承是指把一个事物的属性应用到自己这里来使用,对应到计算机中是一个类中的属性和方法和另一个类的属性方法一致但是方法的实现过程不一致,这时候就可以使用继承来减少重复代码的书写和资源的浪费。

       多态:是指相同的操作或函数、过程可作用于多种类型的对象上并获得不同的结果。不同的对象,收到同一消息可以产生不同的结果。多态和继承是成对出现的。有了继承就会产生父类和子类。在子类中继承到父类的方法可以通过不同的形式来实现。实现的结果就是多态的体现。

对面向对象的认识

       相信大家听到面向对象都很熟悉,但是谁又能真正理解什么的面向对象的。昨天通过听米老师的分享才发现自己之前理解的面向对象都是错误的,我们之前理解面向对象是将一件事情进行封装或者一个功能进行封装。这些都是对于整个过程的封装可以理解为直接是面向过程的思想,并没有体现出面向对象。

       面向对象实际是将一件事情进行拆分,将这件事情中所涉及到一些名词性的事物抽离出来形成对象。比如说拿打水这件事来说,其中涉及到打水人、打水工具、水和受水人等等都可以抽离出来形成对象,并不在乎打水的这个过程是什么样的。我们将抽离出来的这些对象可以进一步在做抽象,比如打水人和受水人都可以抽象为参与人。这样通过不断的抽象,所涉及到的类就会越来越少,能够服用和扩展的方面才会更多。


相关文章
|
16天前
初识面向对象
初识面向对象
|
11月前
|
C#
C#视频之面向对象
C#视频之面向对象
50 0
|
11月前
面向对象(1)
面向对象(1)
52 0
|
11月前
到底什么是面向对象。
到底什么是面向对象。
28 0
|
Java
2. 面向对象(三)
2. 面向对象(三)
120 0
|
Java C++
2. 面向对象(二)
2. 面向对象(二)
96 0
面向对象几个问题
面向对象几个问题
75 0
|
Java
面向对象(三)
面向对象细节内容
74 0
|
Java
面向对象(二)
javase内容
60 0