読者です 読者をやめる 読者になる 読者になる

ふるすたっくえんじにあっぽい人の日記

ASP .NET MVC (C#)、.NET Framework、iOS (Objective-c) アプリ、Androidアプリ (Java)、AWS、たまにLAMPとかプロジェクトマネジメントあたりのお話

【Android】シングルトンパターン

うん、ごくごく普通にね、こんな感じで書けるんですが

package jp.hoge;

public class Hoge {
    
    private static final Hoge instance = new Hoge();
    
    private Hoge() {
    }
    
    public static Hoge getInstance() {
        return instance;
    }

Androidではあんま使えない模様。
まずActivity間でオブジェクトの共有ができないらしい。
んでもって、メモリ足んなくなると勝手にオブジェクトが解放されるらしい。
メンバ変数は通知があるけど、static変数はいつ解放されたかわかんないらしい。

まぁシングルトン自体賛否両論ですがね。
ちゃんと正しく使えば問題ないと思ってる派のぼく残念。
ってゆかSDKとか作るのにシングルトン便利なんよね。毎回インスタンス生成してもらわなくていいし。んー。
あ、ちなみにActivity間のオブジェクト共有問題についてはググったら書いてあっただけで、ほんとかは知らん。