什么是面向对象?谈谈你的理解?

什么是面向对象?

        面向对象和面向过程是两种不同处理问题的角度,面向过程更注重事情的每一个步骤,而面向对象则是更注重参与一件事情里有多少个对象,并且分别需要做什么

        举个例子,比如说我要用热水壶煮茶:

        面向过程时——打开水壶——给水壶装水——放入茶叶——加热/煮——水沸腾进入保温——倒出;

        而面对象则是:人——打开水壶、装水、放入茶叶、倒出

                                 水壶——进行加热、沸腾后自动检测并进入保温

        由此可见面向过程比较直接高效,而面向对象则更易于复用、扩展和维护


面向过程的三大特性: 封装 | 继承 | 多态

        1.封装

                封装的意义就是明确地标识出允许外界使用的所有成员函数以及数据,内部细节对外部调用透明,而外部调用也无需修改和关心内部实现。同时如果说一个接口封装给外部使用,但是又不想其中个别方法不被调用,则还可以使用private修饰词进行私有化。

                典型例子,1.javabean的属性私有,提供getset对外访问,因为属性的复制或者获取逻辑只能有javabean本身决定,而不能由外部胡乱修改。2.框架,比如说使用Mybatis框架,我们只需要知道如何调用其方法即可,不用关心数据库是怎样与服务器建立连接、sql如何执行等。

        2.继承

                继承基类的方法,并做出自己的改变或者拓展;子类共性的方法或者属性直接使用父类的即可,不用自己额外再定义,然后子类只需要专注于自身个性化的改变和拓展

        3.多态

                有三个必要条件:继承、方法重写、父类引用指向子类对象

                父类类型 变量名 = new 子类对象;

                变量名.方法名();

                  注:无法调用子类特有的功能

                         方法重写,即子类重写父类的方法

仅供学习和参考,侵删

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值