zoukankan      html  css  js  c++  java
  • 10分钟学会php面相对象基础(Ⅳ)

    子曰:"温故而知新,可以为师矣"

    一二三中的内容,整理目录如下:

    建立 class person{...}

    实例化class   $p1 = new person();

    继承类 class children extend person{...}

    继承中说到了可以增加自己的属性和方法;

    两个方法 构造方法 __construct 和 析构方法 __destruct;

    private,protected,public这三种等级的属性、方法已经调用的限制;

    可以通过__construct 来实现对私有属性的赋值;

    在此基础上,提供 __set($name,$value) 设置,__get($name)获取 以及是否设置了属性的 __isset($name) 和 清空属性值的 __unset($name) 方法;

    通过 parent::在一定意义上实现重载,为子类添加一些父类方法中不存在的功能;

    final 定义一些不能再被复制的类或者方法;

    static 方法或属性,定义静态类和属性,这些静态类和属性会让所有的继承者们使用同样的静态空间里的内容,静态方法只能调用类中的静态属性,静态属性、方法要用 类名::属性/方法来调用;

    const定义常量 const pi = "3.14";也使用 类名::pi 来使用;

    __toString(){ } 本来如果直接 echo $p1是会报错的,但是在__toString里设定了返回值,在输出就会输出设定的返回值了;

    clone 和 __clone() 克隆实例,获得一个一模一样的实例;可以通过 __clone() 定义克隆后的一些变化, __clone(){ $this->age = $this->age."hehe"};

    __call(){$name,$array} 当调用了不存在的类的方法的时候,如果预先定义了 __call可以绕过错误,继续执行,同时获取 这个不存在的方法名和参数,参数以数组返回;

  • 相关阅读:
    [转]解决ORACEL数据库“exp导出老是出现ORA-00904”
    教程
    [转]web初学者需要掌握哪些技术
    sublime的使用技巧
    安装Sublime Text
    memcached内存分类机制
    Java生产者和消费者
    一致性哈希原理及应用浅析
    Java线程状态分析
    Java多线程中断机制
  • 原文地址:https://www.cnblogs.com/07byte/p/5826920.html
Copyright © 2011-2022 走看看