admin 发表于 2022-12-6 14:18:49

php面向对象之static静态的

php面向对象之static静态的


[*]static修饰的属性叫静态属性、static修饰的方法叫静态方法
[*]静态成员加载类的时候分配空间,程序执行完毕后销毁
[*]静态成员在内存中就一份。
[*]调用语法    类名::属性    类名::方法名()

代码如下:
<?php
class Person {
        public static $add='北京';    // 修饰符之间没有顺序
        static public function show() {
                echo '这是一个静态的方法<br>';
        }
}
echo Person::$add,'<br>';                //北京
Person::show();                                        //这是一个静态的方法练习:统计在线人数

<?php
class Student {
        private static $num=0;        //静态变量,在内存中就一份
        public function __construct() {
                self::$num++;      //self表示所在类的类名
        }
        public function __destruct() {
                self::$num--;
        }
        public function show() {
                echo '总人数是:'.self::$num,'<br>';
        }
}
//测试
$stu1=new Student;
$stu2=new Student;
$stu3=new Student;
$stu2->show();                        //总人数是:3
unset($stu2);
$stu3->show();                        //总人数是:2注意:self表示所在类的类名,使用self降低耦合性

页: [1]
查看完整版本: php面向对象之static静态的