테스트 사이트 - 개발 중인 베타 버전입니다

[클래스] Singleton 싱글톤

· 11년 전 · 961

/*

생성자(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();  에러 발생 

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

게시글 목록

번호 제목
32341
32339
32326
32325
32322
32319
32318
32316
32315
32313
32312
32311
32310
32304
32303
32300
32293
32292
32291
32285
32284
32275
32271
32268
32265
32261
32258
32257
32255
32254
32253
32251
32250
32249
32247
32246
32245
32244
32243
32242
32241
32240
32239
32238
32237
32236
32232
32229
32228
32227
32217
32215
32214
32213
32211
32207
32196
32193
32192
32190
32188
32186
32184
32173
32172
32171
32167
32165
32163
32162
32158
32157
32155
32151
32149
32135
32132
32127
32125
32122
32120
32119
32117
32116
32115
32114
32112
32111
32109
32107
32104
32103
32102
32101
32094
32089
20404
31036
8279
8268