简单理解面向对象思想(OOP)

1、首先什么是对象呢?


可谓是万物皆对象,对象是客观存在的事物,可以说任何客观存在的都是可以成为对象,一台电脑,一只钢笔,一辆轿车,或者说女朋友等等,都是可以成为对象。

2、面向对象是面向过程而言.两者都是一种思想。


(1)面向过程:强调的是功能行为。(强调过程、动作)

(2)面向对象:将功能封装进对象,强调了具备了功能的对象。(强调对象、事物)

(3)面向对象是基于面向过程的。将复杂的事情变简单了。

(4)面向过程–>面向对象:执行者–>指挥者

(5)打个比方:面向过程,自己造电脑。面向对象,自己组装电脑。

3、面向对象在java中是如何实现的?


Alt
(1)通过:类是封装对象的属性和行为的载体,反过来说具有相同属性和行为的一类实体被称为类。
(2)封装:是面向对象编程的核心思想,将对象的属性和行为封装起来,而将对象的属性和行为封装起来的载体就是类,类通常对客户隐藏其实现细节,这就是封装的思想,用户只能通过对外提供的接口访问数据。
特点:提高了类的内聚性,降低了对象之间的耦合性。

(3)多态:是指允许不同类的对象对同一消息做出响应,根据对象创建实例的不同调用不同的方法,本质是编译时和运行时才决定对象的行为。
特点:可替换性,灵活性,扩展性,统一编码风格。

(4)继承:继承是指从已有的类中派生新的类,新的类能够吸收已有类的数据属性和行为,并能够扩展新的功能。
特点:可扩展性,代码复用。

4、为什么使用面向对象编程?


(1)面向对象编程:一组对象互相配合通过沟通完成特定功能

(2)做软件苦苦追求的一种境界是可重用性(reusable),可扩展性。如果是面向过程,一般情况是属性和方法它们是分开的,他们不是聚合的关系,不是合在一起的,这样要复用起来比较麻烦,复用的层次只是局限于方法这个层次上,而面向对象则不同,它是把属性和方法综合在一个里面。综合在一起复用的时候是整个对象进行复用。所以面向对象和面向过程相比,前者更加容易让我们达到可重用性。

5、面试——你是如何理解java的面向对象思想


当面试官问这个问题时:

(1)首先,要引申出类:类是面向对象中的一个很重要的概念,因为类是很多个具有相同属性和行为特征的对象所抽象来的,对象是类的一个实例。

(2)然后,围绕类的三个特征来说:封装、继承和多态。可以结合实际生活或者项目开发中的实际场景进行阐述。

如下为个人总结答案,不喜勿喷:

(1)在我理解,面向对象是一种“万物皆对象”的编程思想。很多个具有相同属性和行为的对象就可以抽象为类,对象是类的一个实例。面向对象在java中正是通过类来实现的。

(2)类具有三个基本特征:封装继承多态(重点)

封装 就是将一类事物的属性和行为抽象成一个类,使其属性私有化,行为公开化,隐藏对象属性和实现细节,仅对外提供访问形式,提高安全性和代码复用性。

继承 则是进一步将一类事物共有的属性和行为抽象成一个父类,而每个子类是特殊的父类 有父类的行为和属性,也有自己特有的行为和属性,扩展了已存在的代码块,进一步提高了代码的复用性。

多态 是指允许不同类的对象对同一消息做出不同响应,允许父类引用(或接口)指向子类(或实现类)对象,从一定角度来 看,封装和继承几乎都是为多态而准备的,类中多个方法的重载叫多态,父子类中方法的覆盖也叫多态。提高了软件 的可重用性和可扩充性。大多设计模式都是围绕多态(可以通过这句将面试官的兴趣引到设计模式方面)

文章来源:https://itudo.cn/java-oop.html.

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值