php的oop一些事

1、static,----------靜態變量聲明與使用

     a、類內部使用static變量要使用self關鍵字,變量使用要帶上$符號,格式爲:self::$some_var,類外部使用類名加作用域符號,格式爲app::$some_var;

     b、靜態方法內使用靜態變量與靜態方法和const常量,不能使用非靜態變量與方法

     c、非靜態方法內允許使用靜態變量和靜態方法

<?php
class app{
 public static $some_var;
 public $public_var;


   function __construct(){
$this->some_var=1;  //隱式聲明public變量
self::$some_var=2;//靜態變量
$this->public_var=1;
var_dump($this);


  }


  public static function getsomestatic(){
return (self::$some_var*5);
  }
  public function dump(){
echo self::getsomestatic()."---".(self::$some_var*5)."---".$this->public_var;
  }
}


$app=new app();
echo "<br/>";
echo $app->getsomestatic()."---實例static some_var <br/>";
echo $app->dump()."<br/>";
echo app::$some_var."---類static some_var <br/>";
echo app::getsomestatic()."---類static some_var <br/>";

?>

self::$some_var=1;//靜態變量

輸出

object(app)#1 (2) { ["public_var"]=> int(1) ["some_var"]=> int(1) } 
5---實例static some_var 
5---5---1
1---類static some_var 
5---類static some_var 


self::$some_var=2;//靜態變量

輸出

object(app)#1 (2) { ["public_var"]=> int(1) ["some_var"]=> int(1) } 
10---實例static some_var 
10---10---1
2---類static some_var 
10---類static some_var 

2.const常量

  a、類內部使用const常量要使用self關鍵字,變量使用不能帶上$符號,格式爲:self::some_var,類外部使用類名加作用域符號,格式爲app::some_var;

  b、定義const常量不能使用任何關鍵字;

  c、常量能被任何成員方法中使用

3.final關鍵字

  a、final關鍵字只能修飾成員方法或者一個類,被final修飾的方法與類均不能被繼承


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章