在php中,面向对象就是将要处理的问题抽象为对象,然后通过对象的属性和行为来解决对象的实际问题。面向对象有两个重要的基本概念:类和对象,类是对象的抽象,在类中可以定义对象的属性和方法;对象是类的实例,类只有被实例化后才能使用。
本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑
面向对象就是将要处理的问题抽象为对象,然后通过对象的属性和行为来解决对象的实际问题。我们通常所说的面向对象准确的说应该叫面向对象编程(OOP),它是面向对象的一部分。
面向对象主要分为三个部分,如下所示:
面向对象分析(Object Oriented Analysis,OOA);
面向对象设计(Object Oriented Design,OOD);
面向对象编程(Object Oriented Programming,OOP)。
面向对象中两个重要的基本概念就是类和对象:
1) 类
世间万物都具有其自身的属性和方法,通过这些属性和方法可以将不同事物区分开来。例如,人具有身高、体重和肤色等属性,还可以进行吃饭、学习、走路等活动,这些活动可以说是人具有的功能。可以把人看作程序中的一个类,那么人的身高可以看作类中的属性,走路可以看作类中的方法。
也就是说,类是属性和方法的集合,是面向对象编程方式的核心和基础,通过类可以将零散的用于实现某项功能的代码进行有效管理。例如,创建一个运动类,其中包括 5 个属性;姓名、身高、体重、年龄和性别,定义 4 个方法:踢足球、打篮球、举重和跳高。
总而言之,类是变量(类的属性)与作用于这些变量的函数(类的方法)的集合,属性与方法是构成类的基础。
2) 对象
类是具备某项功能的抽象模型,实际应用中还需要对类进行实例化,这样就引入了对象的概念。
对象是类进行实例化后的产物,是一个实体。仍然以人为例,“黄种人是人”这句话没有错误,但反过来说“人是黄种人”,这句话一定是错误的。因为除了黄种人,还有黑人、白人等。那么“黄种人”就是“人”这个类的一个实例对象。
可以这样理解对象和类的关系:类是对象的抽象,在类中可以定义对象的属性和方法;对象是类的实例,类只有被实例化后才能使用。
面向对象编程的特性
面向对象编程具有封装、继承、多态三大特性,它们迎合了编程中注重代码重用性、灵活性和可扩展性的需要,奠定了面向对象在编程中的地位。
1) 封装
封装就是将一个类的使用和实现分开,只保留有限的接口(方法)与外部联系。对于用到该类的开发人员,只要知道这个类该如何使用即可,而不用去关心这个类是如何实现的。这样做可以让开发人员更好地把精力集中起来专注于别的事情,同时也避免了程序之间的相互依赖而带来的不便。
例如,在使用计算机时,我们并不需要将计算机拆开了解它每个部件的具体用处,只需要按下电源键就能将计算机启动,这就体现了封装的好处。
2) 继承
继承就是派生类(子类)自动继承一个或多个基类(父类)中的属性与方法,并可以重写或添加新的属性或方法。继承这个特性简化了对象和类的创建,增加了代码的重用性。
例如,已经定义了 A 类,接下来准备定义 B 类,而 B 类中有很多属性和方法与 A 类相同,那么就可以用 B 类继承 A 类,这样就不用再在 B 类中定义 A 类中已有的属性和方法,从而可以在很大程度上提高程序的开发效率。
继承分为单继承和多继承,PHP 目前只支持单继承,也就是说一个子类有且只有一个父类。
3) 多态
对象的状态是多变的。一个对象相对于同一个类的另一个对象来说,它们拥有的属性和方法虽然相同,但却可以有着不同的状态。另外,一个类可以派生出若干个子类,这些子类在保留了父对象的某些属性和方法的同时,也可以定义一些新的方法和属性,甚至于完全改写父类中的某些已有的方法。多态增强了软件的灵活性和重用性。
推荐学习:《PHP视频教程》
以上就是php面向对象什么意思的详细内容,更多请关注自由互联其它相关文章!