/*
생성자(new)를 통해 직접 인스턴스를 생성하지 못하게 하고 public 메소드를 통해 인스턴스에 접근하게 함으로써
사용할수 있는 인스턴스의 개수를 제한할 수 있다.
생성자가 private 라서 자손클래스에서 상속 불가능
*/
class Singleton {
private function __construct() {
}
public static function getInstance() {
if ($s == null) {
$s = new Singleton();
}
return $s;
}
public function test($a) {
echo $a;
}
}
// $s = new Singleton(); 에러 발생
$s1 = Singleton::getInstance();
$s1->test('one');
$s1->test('two');
class A extends Singleton {
}
// $a = new A(); 에러 발생
게시판 목록
팁게시판
디자인과 관련된 유용한 정보를 공유하세요.
질문은 상단의 QA에서 해주시기 바랍니다.
질문은 상단의 QA에서 해주시기 바랍니다.
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 2 | 21년 전 | 3221 | ||
| 1 | 22년 전 | 4318 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기