zoukankan      html  css  js  c++  java
  • php 面向对象

    1类的创建 class创建类

    class Person{}

    2.对象的创建  使用new关键字

    class Person{}

    $p1=new Person

    3.成员的添加

    添加成员需要 三个修饰符

    public 公开的  定义公共的属性和方法,类的外部,类的内部,子类都可以使用

    protected 受保护的  定义受保护的属性和方法  值能在类的内部和子类里使用

    private 私有的 定义私有的属性和方法 只能在自身的类里使用

    方法成员如果前面不加修饰符 默认是public

    4.成员调用使用->符号

    $p1=new Person

    $p1->fn()

    使用成员属性和方法的时候  属性和方法前面不带$符

    $p1=new Person    $p1->fn()    echo $p1->name  

    5.特殊对象$this指向实例化的对象,如果类的方法里想使用类的其他属性和方法得需要使用$this对象

    public $name=“lisi”;

    public function fn(){

    echo $this->name;

    }

    6.构造方法  function__construct()构造函数在new实例化的时候系统会自动调用

    public $name=“lisi”;

    function __construct($name){

    $this->name=$name;

    }

    public function fn(){

    echo $this->name

    }

    7.析构方法

    我们每次new实例化,系统就会给这个对象分配一个内存空间,如果不销毁,系统压力会很大,系统有一个析构方法__destruct 对象实例化之后系统会自动调用。内存销毁的原则是先进后销。

    function __destruct(){

    echo “delete”.$this->name."<br/>";

      }

    }

    $p1=new Person("xiaosi");

    $p2=new Person("xiaowang")

    8.成员赋值

    $p1->name="456";

    echo $p1->name;

    9.php中的继承使用关键字 extends

    class Person {

    public $name="lisi";

    public function fn(){

    echo 111111

    }

    class Child extends Person{}

    }

    $c=new Child

    $c->fn()

    10.类中常量  使用const关键字定义常量,常量在定义和使用的时候不能带$符。

    使用的时候不能用$this 使用范围修饰::前面还是这个类名或self

    const ad=“xiaoxu”;

    public $name="lisi";

    public function fn(){

    echo self::ad;}

    如果向子类访问父类中的常量 使用parent::常量名

    class Person{

    const ad="xiaoxu1111";

    public $name="lisi1111";

    public function fn(){

    echo self::ad;}

    }

    class Child axtends Person{

    function ff(){

      echo parent::ad;

      }

    }

    $c=new Child

    11. 静态变量  在变量前加上关键字 static 静态属性  不能使用->访问了,使用类名::$变量名;

    class Person{

    public static $name="132";

    }

    $p=new Person;

    echo Person::$name;

    12.重载 覆盖

    子类继承父类的方法时,如果子类有和父类同名的方法,从父类那继承的方法就会被覆盖掉,这个就叫重载。

    如果父类的方法前面加上final 则子类无法重载父类的发发,就会报错。

    class Person{

    const ad=“xiaoxu111”;

    public $name="lisi1111"

    public final function fn(){

    echo self:ad

      }

    }

    class Child extends Person{

    function fn(){

    echo "11111"

      }

    }

    $c=new Child;

    $c->fn()

  • 相关阅读:
    隔行变色&&鼠标移入变色
    滚动之固定顶部
    页面滚动之回到顶部
    定时器之秒表
    定时器之小僵尸的移动
    tomcat+spring+https
    域名相关
    【软件创意】智能Goals (android)
    【神一样的作业】二维数组连续的二维子数组的和(元素可以连续)
    【软件工程】敏捷开发方法的总结
  • 原文地址:https://www.cnblogs.com/zzz035921/p/10675246.html
Copyright © 2011-2022 走看看