抽象化

基本

抽象クラスをnewすることは不可能

メソッドにも抽象化定義が可能


サンプル

<?php
// 抽象クラス定義
abstract class AbstractClass
{
	// 抽象メソッド定義
	abstract protected function abs_func01();         // 派生クラス定義時にアクセス権を変更
	abstract protected function abs_func02($param);   // 派生クラス定義時にアクセス権を変更
 
	// 共通メソッド定義
	public function com_func(){
		echo "common_func\n";
	}
 
}
 
// 派生クラス
class testClass extends AbstractClass
{
	// 抽象クラスで定義されたメソッドをオーバーライド
	public function abs_func01(){
		echo "AbstractClass_abs_func01\n";
	}
 
	public function abs_func02($param){
		echo $param . "\n";
	}
}
 
$obj = new testClass();
$obj->abs_func01();
$obj->abs_func02("test data");
$obj->com_func();
 
?>
 



最終更新:2012年08月12日 12:45