以下のリンク: java.lang.Object#toString() がファクトリ パターンの例であるJava のコア ライブラリの GoF デザイン パターンの例。私はこれについて混乱しています。私が今まで理解したことは、オブジェクトを作成するためにファクトリパターンが使用されているということです。誰かがそれをもっと明確に説明できますか?
質問する
2709 次
2 に答える
2
本質的に、ファクトリ パターンは、何かを生成するメソッドを指定する抽象クラスまたはインターフェイスです。次に、実装があり、その実装から何かを構築できます。
ここに次のものがあります。
抽象クラスまたはインターフェース: オブジェクト
ビルド方法: toString()
実装: 任意の Java オブジェクト
製品: ひも
そうですね、これは少し変わった例で、もっと良い例もありますが、工場のモデルには合っています。
于 2012-09-25T23:44:02.090 に答える
0
ファクトリ デザイン パターンは、複数のサブクラスを持つスーパー クラスがあり、入力に基づいてサブクラスの 1 つを返す必要がある場合に使用されます。通常、提供された入力に基づいて異なるタイプのオブジェクトを返す getInstance() メソッドが存在します。よりよく理解するために、この例を参照できます。Java API では、カレンダー クラスは入力に基づいて異なるカレンダー オブジェクトを返します。
static Calendar getInstance()
Gets a calendar using the default time zone and locale.
static Calendar getInstance(Locale aLocale)
Gets a calendar using the default time zone and specified locale.
static Calendar getInstance(TimeZone zone)
Gets a calendar using the specified time zone and default locale.
static Calendar getInstance(TimeZone zone, Locale aLocale)
Gets a calendar with the specified time zone and locale.
JDK で使用される Factory パターンの例:
java.util.Calendar, ResourceBundle and NumberFormat getInstance() methods
于 2019-07-03T13:22:32.523 に答える