面向对象的理解

面向对象是一种思想,目前使用面向对象的语言有C++,C# ,java,简称为oop,与面向对象不同的思想还有面向过程,面向切面,面向对象使开发变得更加简单,不像面向过程需要程序员进行逐一实现,程序员站在造万物的角度去进行开发,而面向对象的话把所有的过程以及特征交给了对象。提到面向对象,我们无法忘记的它的三大特征:封装、继承、多态。封装将属性和方法进行了封装,使属性的访问更加安全,使调用者不关注内部的实现,只管调用即可。同时封装具有4大作用域,分别为public其的访问权限是最大的就像其单词的中文意思一样是公共的、protected其的访问权限是弱与public的主要用于继承的,该访问权限需要在同包下,如果子类访问父类的protected的成员可以在不同包下、private是私有的其的访问权限是最小的,需要在同类下才能访问,所以在开发时对私有属性提供了getter和setter的方法,对对象进行修改和访问、默认的访问权限高于private可以在同包同类下进行访问  继承 :子类继承父类的非私有成员,提高了代码的复用性,但java中类的继承是单一的,但java中对继承是具有传递性的,继承过程中虽提高了代码的复用性,但违背了低耦合高内聚的开发原则,其次继承由于代码的复用性提升了代码的可维护性。三大特征中的最后一种,多态,多态是三大特征中相对较难的,多态在源码中有重要的体现,其是动态绑定的重要的实现方法,多态的特点即父类引用指向子类对象,多态提高了代码的复用性和耦合性,但多态带来了一个问题就是:无法访问子类的特有成员,需要对其进行向下转型才能访问子类的特有成员。多态还有的特点就是相同的事物调用相同的方法,得到的返回值不同。我个人认为面向对象的特性应该再加上抽象,可以说抽象是一种思想,抽象可以使代码的扩展更加方便,在实现抽象的过程中,java引入了抽象类和接口,接口为抽象类的进一步抽象,接口更像一种规范,如usb接口,规范了电脑的某种接口。
 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值