其他分享
首页 > 其他分享> > 对面向对象的一些理解

对面向对象的一些理解

作者:互联网

1.面向对象思想

什么是面向对象?

对比于面向过程,是一种处理问题的角度不同。

面向过程顾名思义注重处理问题的每一个步骤及顺序,

面向对象则更注重问题有哪些参与者,他们都需要做什么,在解决问题时,再对他们需要做的事情进行调用;

比如:洗衣机洗衣服

面向过程:把一系列步骤(函数)拆解,1.打开洗衣机---->2.放衣服---->3.放洗衣粉------>4.清洗-------->5.烘干

面向对象:会找到这个事务的两个参与者(对象),人,洗衣机;

人:打开洗衣机,放衣服,放洗衣粉;

洗衣机:清洗,烘干;

从上述例子来看,面向过程更加直接高效,而面向更易于复用,扩展,维护和合作开发;

封装

封装就是明确标识,告诉外部可以被允许使用哪些数据或者方法,因此你只需要用这些数据和方法,不需要知道底层是怎么实现的;

比如:

  1. 实体类(javabean)中,它向外提供get,set方法以供外部对其数据的修改或访问,而这个其中的操作只能由实体类自己本身决定,而不能由外部胡乱修改。

  2. orm框架中mybatis操作数据库,我们不需连接是如何建立的,sql是怎么执行的,只需要引入mybatis,调用方法就可以了

从上述例子来看,封装使得编码更加模块化,也就是分工更明确,每个人只要管好自己的模块,别人的模块只要拿来用就可以了,还有就是封装具有安全性,就是不让别人随意修改其中属性,像是把年龄修改成负数,把生日修改为2050年之类的不合理的事情发生,这些规则应该由自己来决定。

继承

继承就是继承父类的方法,进行自己的改变,扩展,而父类的东西可以得到保留,不需要自己定义,使得复用性;

而继承、相似的类放到一起继承一个父类,更好管理,维护性更高 ;

而java所有的类都是继承了object类,都继承了object的一些特性。

多态

多态就是不同的子类重写了父类的方法,展现出了不同的效果。

比如:

  1. 动物类中发出叫声方法,狗继承动物类后重写该方法为“汪汪”的叫,而猫则为“喵喵”的叫

从上述可以看到,多态使得代码的拓展性更高

综上所述

面向对象为牺牲了一些性能,而换取了代码的复用性,可维护性,拓展性,使得工程更好管理,更易于开发。

标签:封装,继承,洗衣机,面向对象,理解,一些,父类,方法
来源: https://www.cnblogs.com/violetMist/p/15389736.html