• 面向对象思想


    介绍

    类:是用于描述“某一些具有共同特征”的物体的概念,是某一类物体的总称。

    类:包含2个方面

      外观,形状,描述,数据。。。。。属性

      行为,动作,功能。。。。。。。。方法。

    对象:是指一个具体的“物体”,该物体隶属于某个“类别”(类)。

    对象是类的实例化表现

    语法形式

      定义变量;

      定义函数;

      使用变量(输出,赋值,等)

      调用函数;

      流程控制(if,switch,for,while等)

    1,定义类;定义类的语法中,只有这3种代码:

      1.1定义属性(变量)

      1.2定义方法(函数)

      1.3定义常量(类常量)

    2,创建类的对象;

      变量 = new 类名();

    3,使用对象;

      3.1使用其属性:因为属性就是“变量”,则使用其属性,也就是跟以前使用变量一样。

      3.2使用其方法:因为方法就是“函数”,则使用其方法,也就是跟以前使用函数一样。

      3.3使用其常量:类似使用以前的普通常量。

    对象创建的基本形式(常用)

      $对象名1  =  new  类名();       //对象名就是变量名;类是应该定义过了

      $对象名3 = new  self;        //self指代类本身,这行代码只能在类内部方法中使用。

    值传递

      class P{
          var $v1 = 10;
      }
      $p1 = new P();    //也可以写成$p1 = new P;
      $p2 = $p1;        //这是值传递
      $p1->v1 = 20;    //修改对象$p1
      echo "<br />p1->v1 为:" . $p1->v1;
      echo "<br />p2->v1 为:" . $p2->v1;

    关键字$this

      代表当前所属类的当前对象

    静态属性(static)

      class a{  

        static $v=10; //静态属性

      }

    静态属性的使用 ::(双冒号语法,也叫范围解释符)

      类::$静态属性名;

    静态方法(static):同理静态属性

      注意1:$this在静态方法中不能使用

        2:静态方法中不应调用非静态方法

    关键字self

      含义:代表当前类

      使用:通常只能在某个类的某个方法内部代表该类的名称。

    构造方法

      该方法名字是固定的,为:__construct();

    注:该方法必须是普通方法(不能是静态方法)

      如果一个类中定义了构造方法,则实例化该类时就会调用该方法,且实例化时的参数需要跟构造方法的参数匹配

    方法调用(类似于页面加载完成)

      当new 类名()的时候,其实是在调用该构造方法

    析构方法(于构造方法相反)

      析构方法是“销毁”对象的时候会自动调用。

    调用:在页面结束时自动调用

    继承:一个类从另一个已有的类获得其特性,称为继承 (子承父)(单继承)

    派生:从一个已有的类产生一个新的类,称为派生(父生子)

    访问权限

      public:公共的,共有的,公开的(可以在类,继承,类外使用)

      protected:受保护的(可以在类,继承使用)

      private:私有的(只可以在类使用)

    父类:

      parent代表父类

  • 相关阅读:
    [计算机网络-传输层] 无连接传输:UDP
    [BinaryTree] 最大堆的类实现
    [OS] 生产者-消费者问题(有限缓冲问题)
    [剑指Offer] 64.滑动窗口的最大值
    [剑指Offer] 63.数据流中的中位数
    [剑指Offer] 62.二叉搜索树的第k个结点
    [OS] CPU调度
    [剑指Offer] 60.把二叉树打印成多行
    MySQL数据库实验二:单表查询
    数据库实验:基本表的定义与修改
  • 原文地址:https://www.cnblogs.com/diverman/p/8508888.html
Copyright © 2020-2023  润新知