您的位置:首页 > 其它

【面向对象】如何在静态方法中使用非静态变量?

2012-11-27 09:54 330 查看
关于静态方法和静态变量:
1)static方法中不能直接使用非静态成员,因为非静态成员与实例相关,通过实例化间接使用
2)static方法中不能用this(与实例相关)
3)非static方法中可以使用static成员

如何在静态方法中使用非静态变量?实例:

<?php

class abc{    

public $count=8;    

function __construct(){        

$this->count++;    

}    

static function getCount(){        

$b=new abc();        

return $b->count;    

}

}

$c=new abc();

$b=new abc();

echo $b->getCount();

?>


在静态方法getCount()中,创建了一个新变量$b=new abc()初始化类,然后再使用类的非静态变量就可以了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐