PHP 物件導向 (二)類屬性

一句話兒發表於2020-01-18

資料型別

  1. 四種標量型別 boolean(布林型) integer(整型) float(浮點型) string(字串)
  2. 三種複合型別 array(陣列) object(物件) callable(回撥函式)
  3. 特殊型別 null resource(資源)

靜態屬性

作用:所有類物件所共享

用法:許可權控制符 static $params

訪問方式
  • 類內

    self::屬性名

    類名::屬性名

  • 類外(針對你公共屬性)

    類名::屬性名

<?php
class Student{
    public static $country;

    function __construct($country)
    {
        self::$country = $country;//類內透過 self訪問
    }

    public function getCountry()
    {
        echo Student::$country;echo "<br/>";//類內也可以透過 類名訪問
    }
}

$stu1 = new Student('中國');
echo Student::$country;echo "<br/>"; //類外,透過類名訪問
$stu1->getCountry();
$stu2 = new Student('俄羅斯'); //修改了靜態屬性
echo Student::$country;echo "<br/>";
$stu1->getCountry(); //物件$stu1 的靜態屬性也跟著改變(類靜態變數 被所有類物件 所共享)

類常量

const APP = 'this is app';

作用: 固定不變的屬性,被所有物件所共享,不能用許可權控制符修飾

訪問方式
  • 類內

    self::常量

    類名::常量

  • 類外(針對你公共屬性)

    類名::常量

魔術常量
__FILE__
__DIR__
__LINE__
類常量細節(自己可以模擬實踐,如何證明類常量細節中的點)
  1. 類常量都是公開,但是不需要修飾符,不能使用修飾符
  2. 類常量必須為大寫
  3. 類常量必須賦值
  4. 常量可以被繼承
  5. 常量可以是基本型別和陣列型別,不能是物件
  6. 常量可以在任意位置中使用

複製程式碼,即可執行。 謝謝你的瀏覽,如有錯誤,歡迎指正哈!!!

本作品採用《CC 協議》,轉載必須註明作者和本文連結
寫的不好,就當是整理下思緒吧。

相關文章