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




    ?>
  • 相关阅读:
    分布式系统关注点(3)——过去这几十年,分布式系统的「数据一致性」精华都在这了!
    分布式系统关注点(1)——不知道是不是最通俗易懂的《数据一致性》剖析了
    《西虹市首富》给我们技术人带来的思考
    Kaazing Gateway简单使用
    pylot测试工具环境搭建
    NodeJS学习笔记
    JavaScript逗号操作符
    翻译:SockJS-node文档(一)
    【原】Learning Spark (Python版) 学习笔记(二)----键值对、数据读取与保存、共享特性
    2015年总结与2016年目标和计划
  • 原文地址:https://www.cnblogs.com/sheep-fu/p/13153418.html
Copyright © 2011-2022 走看看