ファクトリパターンJavaとは何ですか
ファクトリ パターン Java とは
ファクトリ パターンは、Java で最もよく使用されます。デザインパターン。このタイプのデザイン パターンは創造的なパターンであり、オブジェクトを作成するための最適な方法を提供します。
ファクトリ パターンでは、オブジェクトの作成時に作成ロジックをクライアントに公開せず、共通のインターフェイスを使用して新しく作成されたオブジェクトを指します。
簡単に言うと、new オペレーションの代わりにファクトリ メソッドが使用されます。平たく言えば、新しいオブジェクトを作成するときは、ファクトリ メソッドを直接呼び出すだけです。プログラミングするときは、ファクトリを定義する必要があります。サブクラスで実装するには、特定のファクトリクラスを定義し、インスタンスを生成するメソッドを定義し、このメソッドを使用してインスタンスを取得します。
利点:
1. 呼び出し元がオブジェクトを作成したい場合、必要なのはその名前だけです。
2. 高い拡張性: 製品を追加する場合は、ファクトリ クラスを拡張するだけで済みます。
3. 製品の特定の実装を保護する 呼び出し元は製品のインターフェイスのみを考慮します。
欠点:
製品を追加するたびに、特定のクラスとオブジェクト実装ファクトリを追加する必要があるため、システム内のクラスの数が 2 倍になります。ある程度、システムの複雑さが増し、システムの特定のクラスへの依存性も高まります。これは良いことではありません。
アプリケーション例:
1. 車が必要な場合、車の製造方法や仕様を気にすることなく、工場から直接受け取ることができます。この車内への実装。
ファクトリ パターンの簡単な実装は次のとおりです:
//所有车的接口 有一个共同改的方法 开车 public interface Car { public void drive(); } //奥迪类 实现car接口因为奥迪车也是车 肯定可以开的嘛 public class Audi implements Car { public Audi(){ System.out.println("生产出一辆奥迪"); } @Override public void drive() { System.out.println("开奥迪"); } } //宝马类 实现car接口因为宝马车也是车 肯定也可以开 public class Bmw implements Car{ public Bmw(){ System.out.println("生产出一辆宝马"); } @Override public void drive() { System.out.println("开宝马"); } } //生产车的工厂 该工厂接收一个车名 你只需要告诉他你要生产什么车 就可以生产出对应的车出来 public class CarFactory { public static Car getCar(String caename){ if(caename.equals("audi")){ return new Audi(); }else if(caename.equals("bmw")){ return new Bmw(); } return null; } } //测试 public class Test { public static void main(String[] args) { //告诉工厂类 你需要生产出一辆奥迪车 那么给昂他传一个参数audi进去 Car audi = CarFactory.getCar("audi"); //就可以生产出奥迪的车 调用开车的方法就可以开车啦 audi.drive(); //宝马类似 Car bmw = CarFactory.getCar("bmw"); bmw.drive(); } } 输出: 成产出一辆奥迪 开奥迪 生产出一辆宝马 开宝马
推奨チュートリアル: java チュートリアル
以上がファクトリパターンJavaとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Java のアームストロング番号に関するガイド。ここでは、Java でのアームストロング数の概要とコードの一部について説明します。

Java の乱数ジェネレーターのガイド。ここでは、Java の関数について例を挙げて説明し、2 つの異なるジェネレーターについて例を挙げて説明します。

Java の Weka へのガイド。ここでは、weka java の概要、使い方、プラットフォームの種類、利点について例を交えて説明します。

この記事では、Java Spring の面接で最もよく聞かれる質問とその詳細な回答をまとめました。面接を突破できるように。

Java 8は、Stream APIを導入し、データ収集を処理する強力で表現力のある方法を提供します。ただし、ストリームを使用する際の一般的な質問は次のとおりです。 従来のループにより、早期の中断やリターンが可能になりますが、StreamのForeachメソッドはこの方法を直接サポートしていません。この記事では、理由を説明し、ストリーム処理システムに早期終了を実装するための代替方法を調査します。 さらに読み取り:JavaストリームAPIの改善 ストリームを理解してください Foreachメソッドは、ストリーム内の各要素で1つの操作を実行する端末操作です。その設計意図はです
