PHP對象的方法、屬性的訪問跟Java相似,有public, protected, private, final, static。
6.3 建構函式和解構函式
function __construct/destruct(args...) {
...
6.4 靜態類成員
class Visitor {
private static $visitors = 0;
function f() {
self::$visitors++;
}
static function getVisitors() {
return self::$visitors;
}
6.5 instanceof和其他輔助函數(類似Java反射)
PHP不支援的OOP特性:
方法重載,運算子多載,多重繼承。
7.2 對象複製
PHP4將對象視為資料類型,PHP5預設將對象視為引用。
$obj1 = clone $obj2;
重寫對象的_clone方法調整複製行為。
7.3 繼承
class Employee { ... }
class Executive extends Employee { ... }
class CEO extends Executive { ... }
建構函式:
function __construct($name) {
parent::__construct($name);
echo "
CEO created!
";
7.4 介面
interface interfaceName {
CONST 1;
CONST N;
function method1();
function method2();
class Class_name implements interfaceName {
function method1() {
...
}
function method2() {
...
}
7.5 抽象類別
abstract class Class_Name {
...