1. 程式人生 > >BPM-第六章-面向對象的PHP

BPM-第六章-面向對象的PHP

rom strong 作用域 rop 表示 調用 prot 作用 clas

封裝,繼承,多態

class ClaaName
{
    //屬性聲明
    //方法聲明
}

    class Employee
    {
        private $name;
        private $title;
        protected $wage;

        protected function clockIn() {
            echo "";
        }

        protected function clockOut() {
            echo "";
        }
    }
  • 使用new關鍵字創建一個對象。
  • 對於屬性,常見的做法是在類開始的地方聲明屬性。
  • 屬性調用需要使用 -> 操作符。$obj->name;
  • 在定義屬性的類中引用屬性的時候,需要顯示的使用this指針,$this->name;
  • PHP屬性有5種作用域:public, private, protected, final, static。能不能顯示的調用時對對象本身來說的,如果對象可以直接使用,稱為顯示調用,如果只能在對象內部使用,叫做隱式。
  • 屬性重載???!!!__set方法和__方法
function __set($propName, $propValue)
{
    $this->$propName = $propValue;
}
  • 使用__get方法獲取屬性。
  • 通用方式:
    class Employee
    {
        private $name;

        public function getName()
        {
            return $this->name;
        }

        public function setName($name)
        {
            $this->name = $name;
        }
    }
  • 在類中可以定義常量。用來表示不會改變的值。
    class mathFunctions
    {
        const PI = ‘3.14‘;
        const E = ‘2.72‘;
    }

    echo mathFunctions::PI;
  • 方法 $obj->methodName();
  • PHP方法有6中作用域:public, protected, private, abstract, final, static。
  • abstract 方法:只在父類中聲明,但在子類中實現。只有聲明為abstract的類可以聲明抽象方法。
    abstract class Employee
    {
        abstract function hire();
        abstract function fire();
        abstract function promote();
        abstract demoote();
    }

## 構造函數和析構函數

BPM-第六章-面向對象的PHP