// 隠れ/ Lunch.java //は、クラスのアクセス指定子を示します。クラスが作る // プライベートコンストラクタで効果的に民間: クラスSoup1 { プライベートSoup1(){} パブリック 静的 Soup1 makeSoup(){ // [1] 戻り 新しい)Soup1を(。 } } クラスSoup2 { プライベートSoup2(){} プライベート 静的 Soup2 PS1 = 新しい Soup2(); // [2] パブリック 静的Soup2アクセス(){ 戻りPS1。 } 公共 ボイドF(){} } // ファイルごとに許可される唯一のpublicクラス: パブリック クラスのランチ{ 無効testPrivate(){ // これを行うことはできません!プライベートコンストラクタ: // - Soup1スープ=新しいSoup1(); } ボイドtestStatic(){ Soup1スープ = Soup1.makeSoup()。 } ボイドtestSingleton(){ Soup2.access()F()。 } }
なぜプライベートコンストラクタは、オブジェクトの別の新しいクラスにすることはできませんが、独自の新しいクラスで、その理由は、プライベートメソッドは、クラスレベルのアクセスです。これは、以下のリンクは、私が実現する前に、いくつかの一つのケースをまとめたものである、単一の最も例アイデアです。