Код, который вы отправили, является примером шаблона Singleton. И здесь идет цитата из википедии
... одноэлементный шаблон является шаблоном, который ограничивает экземпляра класса к одному объекту. Это полезно, когда точно необходим один объект для координации действий по всей системе. Концепция иногда обобщается на системы, которые работают больше эффективно, когда существует только один объект, или которые ограничивают экземпляр определенному числу объектов.
Обычно этот шаблон требует, чтобы конструктор объекта был закрыт, но это не возможно с помощью Android-операций.
Делая что
inst = this;
деятельность «хранит себя» в переменную, которая будет позже, возвращаемой методом деЫпзЬапсе(). Использование этого patter позволит другим классам (другие действия, я думаю) использовать эту деятельность, просто вызывая AlarmActivity.getInstance() ..., что может быть полезно в некоторых случаях.
Я бы предпочел избежать создания шаблона Singleton здесь, потому что это не типичный шаблон Singleton, используя ваши собственные слова: «Обычно этот шаблон требует, чтобы вы построили конструктор объекта private», и я также добавил бы, что действие может быть уничтожено и повторно - создаются несколько раз, в то время как одноэлемент обычно создается только один раз, и с этой точки один и тот же экземпляр будет использоваться повторно (никогда не воссоздаваться). – alfasin
@alfasin, ну, я не сказал, что было бы неплохо использовать его здесь, но у разработчика могли быть свои причины для этого :) При правильном управлении жизненным циклом все должно быть хорошо. Хотя я действительно не понимаю, почему кому-нибудь понадобится инстанция Activity ... и откуда они будут получать доступ к ней. – Dogcat
Я помню, как однажды я видел прецедент для этого поведения, я не могу вспомнить, что это было или если бы это могло быть сделано по-другому (и более элегантным образом ...). Если я найду его, я отправлю ссылку здесь. – alfasin