類和物件

類和介面元件

類可以具有屬性,常量和方法。

  • 屬性儲存物件範圍內的變數。它們可以在宣告時初始化,但前提是它們包含原始值。
  • 常量必須在宣告時初始化,並且只能包含原始值。常量值在編譯時固定,可能不會在執行時分配。
  • 方法必須有一個主體,即使是空主體,除非該方法被宣告為抽象。
class Foo {
    private $foo = 'foo'; // OK
    private $baz = array(); // OK
    private $bar = new Bar(); // Error!
}

介面不能具有屬性,但可能具有常量和方法。

  • 介面常量必須在宣告時初始化,並且只能包含原始值。常量值在編譯時固定,可能不會在執行時分配。
  • 介面方法沒有主體。
interface FooBar {
    const FOO_VALUE = 'bla';
    public function doAnything();
}