zoukankan      html  css  js  c++  java
  • 补完 封装继承多态

    <?php
    //封装的目的是为了让一个类更加安全  做法就是将成员变量变为私有,在类里面做方法来简介访问成员变量,在方法里面加控制 例:
    class Ren
    {
        public $code;//代号
        private $name;//名字
        private $sex;//性别
        private $age;//年龄,必须在18-50周岁之间
        //首先构造方法,用来初始化性别
        function __construct($s)
        {
            $this->sex=$s;
        }
        //构造一个修改年龄的方法
        function SetAge($a)
        {
            //需要加一个控制来实现年龄在18-50岁之间
            if ($a>18 && $a<50)
            {
                $this->age = $a;
            }        
        }
        //造一个获取age值得方法
        function getAge()
        {
            return $this->age;
        }
        //用魔术方法给变量赋值
        function __set($n,$v)
        {
            if($n=="age")
            {
                if($v>18 && $v<50)
                {
                    $this->$n = $v;
                }
            }
            else
            {
                $this->$n = $v;//这句代码和上一句一样,是为了给其他代码提供方法
            }
        }
        //用__get魔术方法来获取变量的值
        function __get($n)
        {
            return $this->$n;
        }
    }
    //造对象
    $r = new Ren("男");
    $r->SetAge(30);
    $r->__set("age",30);
    $r->age = 30;//自动调用__set()方法,将变量名当作第一个参数,将等号右边的值当作第二个参数
    $r->name = "张三";
    var_dump($r);//检查输出所有元素
    //echo输出元素值 一个
    
    ?>

    一。封装

    目的:让类更安全

    做法:成员变量变为私有的,通过方法间接操作成员变量,在方法里面加限制条件

    二、继承

    概念:子类可以继承父类的一切

    方法重写:在子类里面对父类进行方法重写

    特点:单继承:一个子类可以有多个父类,一个父类可以派生出多个子类

    override:方法重写

    overload:重载,编辑多态

    三。多态(运行多态)

    概念:父类引用子类实例,由于子类里面对父类的方法进行重写,父类引用在调用该方法的时候表现出的不同状态

    条件:1必须发生在集成下

    2必须重写父类方法

    3父类引用调用方法

    如果一个方法需要一个父类参数,可以给一个子类对象

  • 相关阅读:
    随机数
    ASP .NET下的301重定向如何做
    网站外部链接建设方案
    解析ASP.NET WebForm和Mvc开发的区别
    委托、匿名委托和lambda表达式
    图片垂直居中
    jquery函数写法
    [转]函数方法常用的动词
    CSS Hack
    富文本编辑器
  • 原文地址:https://www.cnblogs.com/xiaoming-6/p/6183635.html
Copyright © 2011-2022 走看看