静态方法

静态方法也叫类方法,静态方法是属于所有对象实例的,其形式如下:

访问修饰符  static 方法名 (){}

静态的成员是属于类的,普通的成员是属于对象的。

注意:类方法中不能访问非静态属性(变量)

在类外部:类名::类方法名 或者 对象名->类方法名

在类内部:self ::类方法名 或者 类名::类方法名

例题:学生入学叫学费,求学生交的总学费

<?php

    class student{
    public static $fee=0;//总学费
   public $name;
    function __construct($name){
    $this->name=$name;
}
//入学
    pubulic static function enterSchool($ifee){
    self::$fee+=$ifee;
}

    //获取总学费
    public static getFee(){
    return self::$fee;
}
} 

//创建学生
$stu1=new Student("小倩");
//通过类名来调用静态方法
$sti1->enterSchool(300);
$sti2=new Student("李四");
$stu2->enterSchool(300);
echo Student::getFee();




?>

在我们编程中,我们往往使用静态方法去操作静态变量。
静态方法的特点

1.静态方法去操作静态变量。

2.静态方法不能操作非静态变量

注意:普通的成员方法,既可以操作非静态变量,也可以操作静态变量。

静态变量与普通变量区别

①加上static 称为类变量或者静态变量,否则称为实例变量

②类变量是与类相关的,公共的属性

③实例变量属于每个对象个体的属性

④类变量可以通过类名:: 类变量名 或self:: 类变量名 直接访问。

原文地址:https://www.cnblogs.com/zxl89/p/6028725.html