Gointerface接口声明实现及作用详解
276
2022-10-29
静态变量(static)
一、静态变量
/**
*/
function test(){
static $a=0;
echo $a;
$a++;
}
test(); //第一次运行,输出0
test(); //第二次运行,输出1
test(); //第三次运行,输出2
test(); //第四次运行,输出3
?>
二、static关键字的使用
类中的静态成员是不需要对象而是使用类名来直接访问的,格式如下所示:
类名::静态成员属性名; //在类的外部和成员方法中都可以使用这种方式访问静态成员属 性
类名::静态成员方法(); //在类的外部和成员方法中都可以使用这种方式访问静态成员方 法
self::静态成员属性名; //在类的成员方法中使用这种方式访问本类中的静态成员属性
self::静态成员方法名(); //在类的成员方法中使用这种方式访问本类中的静态成员方法
class MyClass{
function __construct(){ //每次创建一个对象就会自动调用一次这个构造方法
self::$count++; //使用self访问静态成员count,使其自增1
}
return self::$count; //在方法中使用self访问静态成员并返回
}
}
MyClass::$count=0; //在类外面使用类名访问类中的静态成员,为其初始化赋值0
$myc1=new MyClass(); //通过myclass类创建第一个对象,在构造方法中将count累加1
$myc2=new MyClass(); //通过myclass类创建第二个对象,在构造方法中又将count累加1
$myc3=new MyClass(); //通过myclass类创建第三个对象,在构造方法中再次将count累加1
echo MyClass::getCount(); //在类外面使用类名访问类中的静态成员方法,获取静态属性的值3
echo "
";
echo $myc3->getCount(); //通过对象也可以访问类中的静态成员方法,获取静态属性的值3
?>
代码运行结果为3 3
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~