Цитата:
Сообщение от caseyryan
в любом случае экземпляр будет только один, что через instance, что просто вызовом конструктора в первый раз
|
это да. Не нравится мне так, непорядок. Я не гонюсь за коротким кодом с некоторых пор... ) А вот аккуратненько все должно быть и по полочкам - это желательно по возможности.
Если уж на то пошло, тогда мне больше нравится такой вариант:

Код AS3:
package {
public class MySingleton {
private static var _instance:MySingleton;
//Переменная доступа
private static var _isConstructing:Boolean;
public function MySingleton() {
if (!_isConstructing) throw new Error("Singleton, use MySingleton.instance");
}
public static function get instance():MySingleton {
if (_instance == null) {
_isConstructing = true;
_instance = new MySingleton();
_isConstructing = false;
}
return _instance;
}
}
}
Хоть, как завещал дедушка Мартин, это и не тру, конечно, пользоваться флагами, но зато тут не создать, опять же, экземпляр из вне.
Цитата:
Сообщение от caseyryan
Джава сама - одно сплошное извращение)
|
А что такое? Детская травма?)