类和对象
类和接口组件
类可以具有属性,常量和方法。
- 属性保存对象范围内的变量。它们可以在声明时初始化,但前提是它们包含原始值。
- 常量必须在声明时初始化,并且只能包含原始值。常量值在编译时固定,可能不会在运行时分配。
- 方法必须有一个主体,即使是空主体,除非该方法被声明为抽象。
class Foo {
private $foo = 'foo'; // OK
private $baz = array(); // OK
private $bar = new Bar(); // Error!
}
接口不能具有属性,但可能具有常量和方法。
- 接口常量必须在声明时初始化,并且只能包含原始值。常量值在编译时固定,可能不会在运行时分配。
- 接口方法没有主体。
interface FooBar {
const FOO_VALUE = 'bla';
public function doAnything();
}