• 总结6.17php的继承和类


    <?php

    class preson{
        public $a = 'ren';
        //所有地方都可以访问得公有变量
        protected $b = 123;
        //受保护,只有自己和子类可以对其访问
        private $c = '空';
        //私有,外部无法进行访问
        function b(){
            echo 'ren';
        }
    class preson1 extends preson{
        function b(){
            echo $this->a;
            echo $this->b;
            //echo $this->c;
        }
        //子类对父类的继承,可以改写方法,这里$c无法访问和输出
    }
    $a = new preson1;
    $a->b();

    interface l{
        function aa();
    }
    //接口的定义,接口是通过 interface 关键字来定义的,就像定义一个标准的类一样,但其中定义所有的方法都是空的。
    class k implements l{
        function aa(){
            echo 'sdgg';
        }
        //接口的运用,使用 implements 操作符,类中必须实现接口中定义的所有方法,否则会报一个致命错误。
    }
    $a = new k();
    $a->aa();
    abstract class i{
        abstract protected function aa();
    }
    //定义抽象类,任何一个类,如果它里面至少有一个方法是被声明为抽象的,那么这个类就必须被声明为抽象的。被定义为抽象的方法只是声明了其调用方式(参数),
    //不能定义其具体的功能实现
    class ii extends i{
        protected function aa(){
            echo 'aaa';
        }
    }//继承一个抽象类的时候,子类必须定义父类中的所有抽象方法;另外,这些方法的访问控制必须和父类中一样(或者更为宽松)
    class cc{
        const ss = '常量值';
        function showConstant() {
            echo  self::ss;
        }}
        echo cc::ss;
        //声明类属性或方法为static,就可以不实例化类而直接访问,但是这里格式是双冒号
    ?>
  • 相关阅读:
    Appium(一):java环境、AndroidSDK环境
    SQL Server Merge语句的使用
    ASP.NET MVC下判断用户登录和授权的方法
    javascript的错误处理
    javascript的封装实例
    Javascript的封装
    ASP.NET MVC的请求生命周期
    Asp.Net页面生命周期
    SQL注入原理
    ASP.NET MVC:窗体身份验证及角色权限管理示例
  • 原文地址:https://www.cnblogs.com/HighKK/p/13153411.html
Copyright © 2020-2023  润新知