zoukankan      html  css  js  c++  java
  • 继承和静态方法属性和常量

    <?php
    //这是父类
    // class father{
    //     public $i='人';//共有的在哪里都可以访问,不写就默认是这个
    //     // protected $i = '人';//这个是受保护的只能在自己类和子类中访问
    //     // private $i = '人';//这个是私有的只能在自己当前类中访问
    //     function aa(){
    //         echo'head';
    //     }
    // }
    // // 这是子类 通过extends来继承父类的属性和方法
    // class son extends father{
    //     var $ii = "男人";
    //   function aa(){//在子类重新定义一个和父类相同的方法名就把父类的覆盖了
    //       echo"方法重写";
    //      echo $this->i;
    //   }
    // }
    // $n = new son();
    // $n->aa();

    // 定义接口  这个接口的意思只是规定创建类里面方法的名称
    // interface a{
    //     public function aa();//接口里的方法必须的公有的
    // }
    // // 定义类
    // class z implements a{//通过implements来和接口相接
    //     public function aa(){//只要与接口相接就必须写接口里的方法
    //         echo "aaa";
    //     }
    // }
    // $n = new z();
    // $n->aa();

    //抽象类   abstract关键词
    abstract class a{
       public static $t='父类';
        abstract protected function m();//抽象方法主要用作继承给子类
        public function aa(){
            echo 'aaa';
        }
    }
    class b extends a{
        const k='常量';//类中定义常量
        public static $z='bb';//定义静态属性 关键词static来定义静态方法和属性
        function m(){//必须有抽象类里面的方法 而且访问权限相等或者比他大
            echo 'c方法'.self::k;//在类中调用静态常量用self
        }
        public static function i(){//这是静态方法
            echo '静态方法'.parent::$t; //调用父类中的静态属性
        }
        
    }
    // 静态方法或者属性可以不用实例化就可以输出
    echo b::k;//输出静态方法或者属性还有常量用::
    echo b::$z;
    echo b::i();
    // $n = new b();
    // $n->m();




    ?>
  • 相关阅读:
    【GIS】SuperMap加载三维服务
    【GIS】SuperMap-Web3D-Sql查询示例
    【GIS】Cesium绘制轨迹线
    【GIS】Cesium地下模式设置
    【Java】jfinal-layui:org.postgresql.util.PSQLException: ERROR: syntax error at or near "value" 位置:11
    【Java】jfinal-layui、postgres
    【JavaScript】js注入
    【可视化】地质油藏可视化之四-面元渐进涂色
    【可视化】地质油藏可视化之三-基于threejs绘制三维zmap数据
    【可视化】地质油藏可视化之一-zmap数据转换
  • 原文地址:https://www.cnblogs.com/sheep-fu/p/13153418.html
Copyright © 2011-2022 走看看