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);


    ?>

  • 相关阅读:
    86. Partition List
    2. Add Two Numbers
    55. Jump Game
    70. Climbing Stairs
    53. Maximum Subarray
    64. Minimum Path Sum
    122. Best Time to Buy and Sell Stock II
    以场景为中心的产品设计方法
    那些产品经理犯过最大的错
    Axure教程:如何使用动态面板?动态面板功能详解
  • 原文地址:https://www.cnblogs.com/panyiquan/p/5562542.html
Copyright © 2011-2022 走看看