ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

面向对象

2021-08-12 10:33:39  阅读:224  来源: 互联网

标签:封装 对象 继承 洗衣机 多态 面向对象


什么是面向对象(Object-oriented)?

在程序中使用对象来映射现实中的事物,用对象之间的关系来表示现实中事物之间的关系,这种思想就是面向对象(引用自java基础入门)

比如学生和老师就是两个对象,学生和老师之间的关系就是对象之间的关系

面向对象和面向过程的区别是什么?

面向过程更注重事件的步骤和顺序(解决问题的方法),面向对象更注重参与者(对象)以及参与者的属性和行为。

比如洗衣机洗衣服,如果是面向过程,就会将任务拆解成一系列步骤,打开洗衣机,放衣服,放洗衣粉,开启洗衣机等;如果是面向对象,首先先确定洗衣服的参与者,即对象有哪些,以及这些参与者应该做什么。这样就会拆出两个对象,人和洗衣机。人:打开洗衣机,放洗衣粉和开启洗衣机;洗衣机:清洗,烘干。

面向对象面向对象是java中的一个重要的概念,说到面向对象就不得不说面向对象的四个特性:抽象,封装(Encapsulation),继承(inheritance)和多态(polymorphism)。

抽象:抽象是将一类相似的对象的共同特征抽取出来构造类的过程,包括数据抽象和行为抽象,抽象只关注对象的属性和方法,而不关注这些行为的具体细节是什么。类是对象的抽象,是对象的模板。

封装:封装是将对象的属性和方法封装起来,不需要让外界知道具体的细节。封装就像一个黑盒子,对外隐藏里面的信息,用户只需要知道怎么操作,而不需要知道实现的具体细节,比如说用户使用计算机,只需要知道如何用手指敲键盘,不需要知道计算机内部是如何工作的就能使用计算机。所以封装是一种信息隐蔽的方式。如果没有封装,别人就可以随意修改属性,这会对程序的运行造成很大麻烦。举一个例子,如果我们的某个属性的set函数中对该属性的设置有一定要求,比如需要加前缀,其他人如果能随意修改,就会破坏这种规则,有可能会造成后面程序无法识别。

继承:继承是从已有类中得到继承信息创建新类的过程,提供信息的叫父类(基类,超类),得到信息的叫子类(派生类)。通过继承,子类不仅有父类的信息,也可以进行扩展自己的信息,继承就像现实中子女继承父母的性格,子女不仅有父母的性格,也可以有后天形成的性格。继承是多态的基础。

多态;多态是指不同子类对同一信息会表现出不同的行为。要实现多态必须满足2个条件:

1.方法重写(子类继承父类并重写父类已有的或抽象方法)

2.对象造型(父类型引用引向子类型对象)

多态举例:不同身份的人登录系统会进入不同的页面,管理者和用都户拥有login方法,继承于同一个父类的login方法。

参考

<<Java基础入门>>

<<java面试宝典>>

B站100道面试题视频

标签:封装,对象,继承,洗衣机,多态,面向对象
来源: https://www.cnblogs.com/fcy-blog/p/15121178.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有