/*
** 추상 클래스 **
상위 클래스에서 메소드(껍데기)만 구현하고, 하위 클래스에서 그 메소드를
구현해야 한다.
CSpeak 클래스에서 speak()라는 추상 메소드를 구현 했으며, 하위 클래스의
CKor, CEng에서 각각 실제 기능이 있는 speak() 메소드를 구현 하였다.
*/
abstract class CSpeak
{
abstract public function speak();
public function write()
{
$this->speak();
}
public function __set($name, $value) { $this->{$name}=$value; }
public function __get($name) { return $this->{$name}; }
}
class CKor extends CSpeak
{
public function speak()
{
echo "한국어를 하다.<br>";
}
}
class CEng extends CSpeak
{
public function speak()
{
echo "영어를 하다.<br>";
}
}
/*
class CJpn extends CSpeak
{
// 추상 메소드를 구현하지 않았기 때문에 에러가 난다.
}
*/
$kor = new CKor();
$eng = new CEng();
$kor->write();
$eng->write();
?>
결과 :
한국어를 하다.
영어를 하다.
"PHP" 카테고리의 다른 글
[2008/02/27] 웹페이지에서 MAC Address 구하는 Active... [2009/10/06] PHP 에서 MSSQL 접속하는 방법 (셋팅방법, 윈... [2009/10/06] [PHP] 클래스 - 추상 클래스 ( Abstract) [2008/07/15] html 태그 제거 하기 [2008/09/02] nobody 권한이 걸려있는 폴더 삭제하기 [2009/10/06] PHP - GD로 이미지 합치기 텟트 출력 [2009/11/18] PHP에서 "HTTP / HTTPS" Request하기 [2008/11/21] 윈도우 운영체제에서 아파치 설치 후 PHP설정 방법


댓글을 달아 주세요