面向对象学习

来源:互联网 发布:网络嗅探器5.5.0 编辑:程序博客网 时间:2024/06/02 08:02

        面向对象是相对面向过程而言,均为一种编程思想。面向过程程序设计,其解决问题的焦点集中在函数。在多函数程序中,许多重要的数据放置在全局数据区,这样可以被所有函数访问,每个函数又有自己的局部数据。这种结构容易造成全局数据被函数无意修改,导致程序的不确定性。而面向对象则可以弥补该缺点。面向对象的范式将数据和方法耦合在一起构成对象。使用面向对象范式的软件设计重点在对象以及对象的操作上。使用对象提高了软件的可重用性,并且使程序易于开发和维护。

1.万物皆对象

对象是一个类的实例(具体化),类为对象定义属性和行为。对象具有自身的结构,它具有属性(特性)和行为。对象的行为包括它所能执行的操作。属性和操作合起来被称为特征。

2.面向对象有三个最基本的特性,即:封装,继承,多态。

封装(Encapsulation:使用方法把类的数据隐藏起来,遵循了java一切皆为对象的基本概念和核心思想,达成对类的封装,让普通类型上升为对象级;封装使用private修饰符将数据设为私有保护数据,防止数据被直接的访问和修改,增加了类的安全性和维护性。   

承(Implementation:发生在类和类之间,可分为单继承和多层继承描述父子对象之间的血缘关系(java只能单继承), 最终达到的目的是:一旦使用了继承,子类便获得了父类所有的可访问的成员(变量和方法),但是父类的私有的方法和属性不能被访问,父类的final成员不能被重写。 一旦使用了继承,父类的实例能指向派生类(子类)的引用。   

多态(Multipart:对象在运行期和编译期具有的两种状态,使代码具有灵活性和重用性。编译时多态,也就是函数重载,所谓函数重载就是指同一个函数名可以对应多个函数的实现具体调用哪个按照由参数个数,参数类型等来决定。运行时多态:用一个基类的指针或引用来操纵多个派生类型的能力被称为多态性。实现多态的技术是动态绑定(方法可以沿着继承链的多个类中实现)。

0 0
原创粉丝点击