• 静态关键字static


     1 //静态关键字的使用static
     2 //类里面的普通成员是属于对象的,不是属于类的(调用的时候是用对象调用)
     3 //什么叫做静态的:类静态成员是属于类的,不是属于每个对象的
     4 //定义静态成员用static关键字修饰
     5 //静态(函数)方法里面无法调用普通成员
     6 //静态(函数)方法可以调用静态成员,使用self关键字来调用
     7 //self代表该类,$this代表该对象
     8 
     9 class Person      
    10 {
    11     public static $nation;   //静态成员变量
    12     public $name;
    13     public $sex;
    14     private $age;
    15     
    16     function __construct($name="",$sex="男",$age=12)  //构造函数
    17     {
    18         $this->name=$name;
    19         $this->sex=$sex;
    20         $this->age=$age;
    21     }
    22     
    23     static function jump()  //静态方法不能调用普通成员,只能调用静态成,使用self::
    24     {
    25         echo "民族:".self::$nation;   
    26     }
    27     
    28     function say()      //普通方法(函数)也能调用静态成员,使用self::$属性名
    29     {
    30         echo "民族:".self::$nation.";姓名:".$this->name.";年龄:".$this->age;
    31     }    
    32 }
    33 
    34 $p=new Person("孔二","男",30);
    35 
    36 Person::$nation="汉族";   //类外部调用静态成员与函数  类名::$属性名
    37 Person::jump();                                //类名::静态方法名()
    38 echo "<br>";
    39 $p->say();
    40 var_dump($p);
    41 
    42 
    43 class China extends Person   //编写一个子累,关键字:extends
    44 {
    45     public static $date;
    46     static function run()
    47     {
    48         echo "民族:".self::$nation.";日期:".self::$date;
    49     }
    50     function say()       //子类对父类方法的重写
    51     {
    52         parent::jump();
    53         echo $this->name."说汉语";
    54     }
    55 }
    56 
    57 $c=new China("张小五","女",36);
    58 China::$date="2016-4-29";
    59 China::run();
    60 echo "<br>";
    61 $c->say();
    62 var_dump($c);
  • 相关阅读:
    angular2学习
    随笔
    angular 中ng-repeat后ng-click失效
    一个hover效果
    获取屏幕高度
    延时加载 lazyload使用技巧
    关于MVC模板渲染的一点小事type="text/template"
    JsRender实用教程(tag else使用、循环嵌套访问父级数据)
    jQuery Validate 插件为表单提供了强大的验证功能
    日期时间选择器bootstrap-datetimepicker表单组件
  • 原文地址:https://www.cnblogs.com/zst062102/p/5446918.html
Copyright © 2020-2023  润新知