首页 > 试题广场 >

阅读下面PHP代码,并选择输出结果( )

[单选题]
 阅读下面PHP代码,并选择输出结果(   ) 
<?php 
    class A{
        public static $num=0;
        public function __construct(){
            self::$num++; }
    }
    new A();
    new A();
    new A();
    echo A::$num;
?>
  • 0
  • 1
  • 2
  • 3
D, static属性常驻内存
发表于 2015-02-25 19:16:05 回复(1)
实例化A时只会触发__construct()的语句而不触发publicstatic$num=0;。同时$num是static,所以会加三次、
发表于 2016-02-19 10:59:14 回复(2)
D 静态属性不会被立刻回收
发表于 2015-04-09 22:00:24 回复(1)
这样想对吗:第一次new时,self::0++;(0++ 等于1)将1赋回去给 public static $num = 1;
                     第二次new时,self::1++;(1++ 等于2)将2赋回去给 public static  $num = 2;
                      第三次new时,self::2++; (2++ 等于3)将3赋回去给 public static  $num = 3;
                     最后 echo A::$num  就是3了 
发表于 2016-10-07 20:51:43 回复(0)
例化A时只会触发__construct()的语句而不触发publicstatic$num=0;。同时$num是static,所以会加三次、
发表于 2020-07-20 23:44:19 回复(0)
public static $num, 静态变量$num属于类,不属于对象,self::$num++ 访问的就是类A中的$num,new 了3次,$num就会加3次
发表于 2018-06-04 18:52:51 回复(0)
static 变量常驻内存
发表于 2018-03-09 21:14:17 回复(0)
echo A::$num ; 这个A指的是类
发表于 2017-05-31 09:00:39 回复(0)
使用关键字  static 从新实例化对象是属性不会被回收
发表于 2017-05-24 17:33:19 回复(0)
静态属性不会被立刻回收,选D
发表于 2017-03-18 17:56:38 回复(0)
static成员不会被立刻回收
发表于 2016-11-08 20:59:37 回复(0)
我运行的结果是:3。看到这题的人,可以自己运行下。。
发表于 2015-06-21 15:02:35 回复(2)