zoukankan      html  css  js  c++  java
  • PHP 面向对象封装

    <?php
    //类的概念
    //对象的概念
    //定义类
    //class Ren
    {
    //成员变量
    //成员方法 
    }
    //造对象
    //$r=new Ren();
    //调用对象的成员$r->

    //面向对象三大特性:封装,继承,多态
    //1.封装
    //目的:让类更加的安全  做法:不让外界直接访问类的成员

    //具体做法:
    //1.成员变成私有:访问修饰符:(public公有的 private私有的 protected受保护的,只有该类和子类可访问)
    //2.造成员方法,来操作变量

    class Ren
    {
     
         private $age;//私有成员
      private $name;
      private $sex;
      //构造函数 在造对象时,对成员变量进行初始化的
      /*特殊点:1.执行时间特殊:造对象new时自动执行
               2.写法特殊   __construct  */      
      function __construct($s)
      {
       $this->sex=$s;
      }
      
      /*(方法一)
     //造方法去给变量赋值 
     public function setAge($a)
     {
      if($a>18and$a<50 )
      {
      $this->age=$a;
      }
     }
     //取值
     function GetAge()
     {
       return $this->age; 
     }*/
     
     //(方法二)
     //3.适用类中提供的__get()和__set()方法,变量赋值的方法
     function __set($n,$v)
     {
       if($n=="age")
       {
        if($v>18and $v<50)
        {
           $this->$n=$v;
        } 
       }
       else
       {
        $this->$n=$v;
       }
     }
     //取值方法
     function __get($n)
     {
      return $this->$n;
     }
    }

    $r=new Ren("男");
    //$r->age=20;
    //$r->name="张三";
    //echo $r->name;
    var_dump($r);


    ?>

  • 相关阅读:
    C#综合揭秘——Entity Framework 并发处理详解
    Apache2.2+Tomcat7.0整合配置详解
    python操作excel
    NameError: name ‘time‘ is not defined
    ping命令最实用的
    github使用方法
    数字证书
    网络编程
    不辣的皮特
    msdn上的“索引器”(indexer)示例
  • 原文地址:https://www.cnblogs.com/panyiquan/p/5562542.html
Copyright © 2011-2022 走看看