JAVA面向对象总结(封装、继承、多态)

前言

由于在面试中会经常问到面向对象的问题,所以今天在这里做一个总结(以下的面向对象内容都是在JAVA当中的),文章中又出现错误的地方还请各位指出。

一.对面向对象的理解

1.书本中对面向对象的解释:——将数据及对数据的操作方法放到一起,作为一个相互依存的整体—对象。将同类的对象抽象出其共性,形成类,每个类中的大部分数据只能由本类的方法进行处理。类通过一个简单的外部接口与外界发生关系,方法与方法之间通过消息进行通信。程序的具体流程由用户在使用中决定。
2.我对面向对象的理解(普通人能看得懂的解释):——面向对象是程序对现实世界模型的延伸,是一种“是一种万物皆可对象”的编程思想。现实世界中具有相同属性的物体可以归为一类事物-类,而这一类事物中的每一个个体都是这类事物的实例-对象。面向对象编程是以对象为中心,以消息为驱动,所以可以说面向对象的程序=对象+消息。

二.面向对象的三大特性(封装、继承、多态)

1.封装*

概念:隐藏对象的属性和实现细节,仅对外暴露公共访问接口。
个人理解:封装就是将一类事物的属性和行为抽象成一个类,并将其属性私有化,行为公开化,这样做既可以隐藏对象的实现细节,也可以使代码模块化,提高了代码的复用性。

好处:

①代码模块化
②私有化,提高安全性
③提高代码复用性

坏处:

降低执行效率

2.继承*

概念:使用已存在的类的定义作为基础来建立新类的技术。新类的定义可以增加新的数据和新的功能,也可以用父类的功能,但是不能选择性的继承父类。
个人理解:继承就是基于已有的类派生出新类,已有的类叫做父类,新类称为子类,子类可以调用父类非private修饰的属性和行为,也可以扩展自己的功能。

好处:

①提高了代码的复用性
②提高了代码的维护性
③使类与类之间产生关系,这是多态的前提

坏处:

增加了类与类之间的耦合性

3.多态*

概念:父类引用指向子类对象(也可以说通过指向父类的指针,来调用在不同子类中实现的方法)
个人理解:多态就是定义一个父类接口,不同的子类方法继承这个父类接口,在调用父类接口的时候就可以调用不同子类的方法了。

好处:

①解除父子类继承的耦合度
②实现了接口的重用

坏处:

不能使用子类中的特有方法
多态有两个而实现方式:覆盖和重载

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值