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

    <body>
    <?php
    //类的概念
    //对象的概念
    //定义类
    //class Ren
    //{
        //成员变量
        //成员方法
    //}
    //造对象
    //$r = new Ren();
    //调用对象的成员$r->
    
    //面向对象三大特性:封装,继承,多态
    
    //1.封装
    //目的:让类更加的安全。做法:不让外界直接访问类的成员
    
    //具体做法:
    //1.成员变为私有:访问修饰符(public private protected)
    //2.造成员方法来操作变量
    
    //3.使用类里面提供的__get()和__set()方法
    
    class Ren
    {
        private $age; //私有成员
        private $name;
        private $sex;
        
        //构造函数:在造对象的时候,对成员变量进行初始化
        //1.执行时间特殊:造对象的时候就自动执行
        //2.写法特殊:__construct
        
        function __construct($s)
        {
            $this->sex = $s;
        }
        
        //造方法去给变量$age赋值
        /*public function SetAge($a)
        {
            if($a>18 and $a<50)
            {
                $this->age = $a;
            }
        }
        //取值
        function GetAge()
        {
            return $this->age;
        }*/
        
        
        
        //变量赋值的方法
        function __set($n,$v)
        {
            if($n=="age")
            {
                if($v>18 and $v<50)
                {
                    $this->$n = $v;
                }
            }
            else
            {
                $this->$n = $v;
            }
        }
        //取值方法
        function __get($n)
        {
            return $this->$n;
        }
        
        
    }
    
    $r = new Ren("男");
    
    $r->name = "张三";
    
    
    var_dump($r);
    
    
    //设计一个类:包含$a,$b,求和的方法,求乘积的方法,可以对变量进行初始化,$a,$b必须大于0小于100
    
    
    
    
    
    
    
    
    ?>
    </body>
    View Code
  • 相关阅读:
    node 使用笔记
    体会 git 之优越性
    Notes for building gimp-print
    Selenium Books
    Using MongoDB in C#
    Learning coding online
    USING NHIBERNATE WITH MySQL
    Data Visualization Books
    Web Automation with Selenium (C#)
    Gearman In Action
  • 原文地址:https://www.cnblogs.com/bilibiliganbei/p/5561592.html
Copyright © 2011-2022 走看看