您的位置 首页 php

PHP基础学习11.面向对象入门1

面向对象程序设计,简称OOP,就是Object-oriented-Programming。自打PHP5我进宫以来,就独宠我一人,我劝各位开发者要雨露均沾,可他们非是不听呢,就宠我,就宠我,就宠我!由于PHP5开始完善面向对象的设计之后,PHP面向对象编程被逐渐推广开来,从此成为比较主流的开发模式。

既然要学习面向对象,我们是必须要了解它的一些概念的。什么是对象呢?对象是指内村上一段有意义的区域,而生活化的对象是指那些能被抽象化的模型,狭义一点的对象就是一个被实例化后的类,更简单的对象就是男女朋友(这个没毛病,老铁!)从我们学习函数 学习类以来,我们就接触了一系列的设计结构和名词。那么函数有没有对象呢?

在我看来,调用函数的那个地方其实也是某种意义上的对象,只不过它是以返回值而存在的,并没有实例化类那样的返回结构,而如果这个函数本身能返回对象,那么调用函数和实例化类其实区别就不是很大。(这可是冒天下大不讳,众多编程人员都认为函数和类区别很大)

面向对象包含哪些术语概念呢?

  • 类是什么?用以前C语言老师(他后来也教我们C++)讲的话来说就是:“和你们讲类,我真是太累了”。类定义了一系列数据的操作存储以及处理方式,能够形成相对封闭的提供给自己或者别人使用的一个数据类型的内存结构,我觉得这样定义它是比较合理和科学的,真要追根究底,类是很难描述的一种东西,它虽然有固定的形式,但是又千变万化,能表示的东西也非常繁多,实现方式多种多样,基本上很多常见业务都是靠类的封装然后实例化调用方法来实现的。

  • 对象

    这是一种类实例化后的变量存储单元了,如果说类是模型,那么它就是生产出来的成品,拥有了很多实在的内涵和功能,它能够调用自身函数,能够读写自身属性(属性也就是成员变量)

  • 成员变量

    这是类本身能够存储和使用的一种内部变量,甚至也能提供给外部使用,使用关键字来修饰,我们常用的是private protected public等来修饰,当然了,你也可以试试 const static 等等关键字,这些关键字就赋予了成员变量更多的含义,和使用方法,const成为常量,在类的内部使用,这和defined的那个常量还是有区别的,static修饰的是 静态方法 或者 静态变量 ,不需要实例化类就能够被直接使用。

  • 成员函数

    我们通常称之为方法,之前我一直困惑,这个函数和方法有什么区别呢?原来就是在类里面和外面的区分,类内部使用的叫方法,单独使用的叫函数

  • 继承

    继承是一个比较庞大的话题,这里面最核心的是子类继承父类,而我们通常说的子类父类其实是口语化了的,书面语讲基类和派生类。基类就是父类咯,基础,基本嘛,派生类就是子类,那么子类能继承父类的那些东西呢?很多资料或者书面都说只能继承 public和protected的方法和属性,但是实际上,子类能继承父类的private方法和属性,只是它不能直接访问罢了。当一个子类被实例化的时候,默认会先调用父类的 构造方法 对父类进行初始化,即在内存中创建一个父类对象,然后再父类对象的外部放上子类独有的属性,两者合起来成为一个子类的对象。子类继承了父类的所有属性和方法或子类拥有父类的所有属性和方法是对的,只不过父类的私有属性和方法,子类是无法直接访问到的。即只是拥有,但是无法使用。

  • 父类

    能被他人继承的类,也称为基类,超类

  • 子类

    一个继承了父类的类,也称为派生类

  • 多态

    同一方法通过不同参数来实现不同的功能和逻辑,并用于多种类型的对象中,实现不同的返回结果,称之为多态性质

  • 重载

    就是子类继承了父类的方法,但是又想做改进,不想要父类的那个方法,想做出一些变化,甚至也可以在方法中调用父类该方法,实现追加模式的方法

  • 封装

    是指能够把一部分逻辑进行归纳概括并放置在类的内部,通过一系列的控制避免外部对象直接访问,通过预留的封装接口统一规范的对类的数据进行处理

  • 构造函数

    一个类在实例化的时候自动调用的函数,默认可以不写该函数,则初始化的时候什么也不做。子类书写该函数会覆盖父类构造函数,则可以先用parent::__construct()来先调用父类构造。在PHP4中构造函数方法名称与类同名,在PHP5中,已经出现了统一的关键字__construct来定义构造函数。

  • 析构函数

    析构函数是在对象消亡的时候自动调用,即结束了它的生命周期的时候,一般析构函数用来释放内存,释放链接等等。

在已经对类与对象的术语都了解之后,回头看,我们就是要通过一系列设定好的结构,来实现我们想要的 数据对象 ,封装复用一部分功能,实现代码的可复用性,提高内聚,降低耦合罢了。

此处提供一份关于 类和对象 的示例代码吧

父类辛苦打拼 子类马上继承 并重载父类的日常生活

运行结果

文章来源:智云一二三科技

文章标题:PHP基础学习11.面向对象入门1

文章地址:https://www.zhihuclub.com/149927.shtml

关于作者: 智云科技

热门文章

网站地图