Joshua Blochの記事を読んでいて、Effective Java
Item1について質問がありStatic Factory Method
ます。
引用[Bloch、p.7]
インターフェイスは静的メソッドを持つことができないため、慣例により、Typeという名前のインターフェイスの静的ファクトリメソッドは、Typesという名前のインスタンス化できないクラスに配置されます。たとえば、Javaコレクションフレームワークは、変更不可能なコレクション、同期されたコレクションなどを提供します。これらの実装のほぼすべては、インスタンス化できない1つのクラス(java.util.Collections)の静的ファクトリメソッドを介してエクスポートされます。返されるオブジェクトのクラスはすべて非公開です。
Ok。ソースコードを見ると、プライベートコンストラクターを持つjava.util.Collection
インターフェイスとjava.util.Collections
クラス(インスタンス化できないクラス)があります。そして、インスタンス化できないクラスCollectionsには、Blochが言ったように、すべて静的メソッドがあることがわかります。しかし、ブロッホが言ったように、私は2つのクラス間の関係を見ることができません
インターフェイスは静的メソッドを持つことができないため、慣例により、Typeという名前のインターフェイスの静的ファクトリメソッドは、Typesという名前のインスタンス化できないクラスに配置されます。
誰かが私に明白なことを指摘できますか?
彼が言ったときそれはどういう意味ですか
返されるオブジェクトのクラスはすべて非公開です
ここでJavaソースを入手します:http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b14/java/util/Collection.java ?av = f