• PHP三大特性-封装


    封装

    目的:让类更加安全,不让外界直接访问类里面的成员变量

    做法:1.把成员变量做成私有的。2.做一个方法来实现取值或赋值,在方法里面加限制条件。

    class ren

    {

      private $name;

      private $sex;

      private $age;

      

      function __construct($s)

      {

        $this->sex=$s;  

      }

      public function Say()
      {
        echo "hello";
      }


      function __destruct() //析构函数,对象销毁前执行
      {
        echo "该对象销毁了!";
      }

      

      function SetAge($a) //给age赋值的函数
      {
        if($a>10 && $a<50)
        {
          $this->age = $a;
        }
      }


      function GetAge() //取age的值
      {
        return $this->age;
      }

      

      function __set($name,$value) //对类里面的私有成员进行赋值的魔术方法^
      {
        if($name == "age")
        {
          if($value>20 && $value<50)
            {
              $this->$name = $value;
            }
        }
        else
        {
          $this->$name = $value;
        }
      }

      function __get($name) //对类里面的私有成员进行取值的魔术方法^
      {
        return $this->$name;
      }

    }

    使用类里面提供的魔术方法也可以实现对私有成员的操作
    __set()特点:会自动执行,把赋值语句中的变量名作为第一个参数,把变量值作为第二个参数调用__set方法
    __get()特点:会自动执行,把取值语句中的变量名作为参数调用__get方法

  • 相关阅读:
    Effective C++读书笔记~4 设计与声明
    《程序员的自我修养》读书笔记 第十一章 运行库
    C++ 调试问题:对象包含与成员函数不兼容的类型限定符
    Effective C++读书笔记~6 继承与面向对象设计
    C++ lambda表达式
    备战前端
    SQL Server2008 统计某个数据库用户表和行计数方法
    回想
    C# 理解lock
    (原创)Nhibernate对象关系映射的两种方式以及一些注意
  • 原文地址:https://www.cnblogs.com/dianfu123/p/5493859.html
Copyright © 2020-2023  润新知