Prinzipien von Entwurfsmustern: Für die Entschuldigungsprogrammierung
Die Rolle von Fabrikmustern:
A. Beim Entwurf der Anwendung wird die Erstellung von Objekten an einem Ort konzentriert oder durch vereinheitlicht Eine bestimmte Klasse verwalten (Frühling)
B. Objekte können direkt hinzugefügt werden, ohne die Anwendung zu ändern, was auch für die Objektpflege von Vorteil ist.
Arten von Fabrikmustern:
A. Einfache Fabrik
B. Fabrikmethode
C. Abstrakte Fabrik
Keil:
Es heißt, dass ein Chef im Nordosten drei Autos zu Hause hat, einen Mercedes-Benz, einen BMW und einen Lamborghini. Bei verschiedenen Gelegenheiten bat er den Fahrer, anders zu fahren Autos zum geselligen Beisammensein.
Einfache Fabrik:
Zusammenfassung:
Paket com.product.abstruct;
öffentliche Schnittstelle Auto {
public void drive( );//Das Auto ist zum Fahren da, also muss es einen Motor haben
import com.product.abstruct.Car;
public class Audi implementiert Car {
public void drive(){//BMW ist auch ein Auto, kein Pferd, und es muss einen Motor haben
öffentliche Klasse Benz implementiert Auto {
Public void Drive () {// Audi ist auch ein Auto, kein Dior, sondern auch ein Motor
// Todo Auto-Generatically ,heute fahre ich Benz. . . . ");
System.out.println (" Chef, einige in Ihren Anweisungen ... "); ======Lamborghini Province====== Fabrikklasse : Die Fabrikklasse ist eine Managementklasse und die Person, die direkt für das Auto verantwortlich ist. Paket com.product. Fabrik; Import com.product.implement .Benz; public class Driver { public static Car driveCar(String carName) throws Exception{ If(carName.equalsIgnoreCase("Benz" )) {Neuen Benz zurückgeben ();
}
if (carname.equalSignorecase ("bmw") {
Neuen BWM zurückgeben ( );
., . Eines Tages reist der Chef nach England, um sich Liverpools Heimspiel gegen Aston Villa anzusehen, und muss einen BMW zum Flughafen fahren um 14 Uhr in einem BMW aufstehen. . .
Paket com.product.test;Import com.product.abstruct.car;
Import Com.fuctory.driver;
Öffentliche Klasse Test { public static void [] args) throws Exception{ Car car = Driver.driveCar("Benz");//Bitten Sie den Fahrer, Sie abzuholen ;//Ein-Klick-Start { Da die Anzahl der Autos zunahm, mussten alle Autos von einem erfahrenen Fahrer verwaltet werden. Die jährlichen Inspektionen, Versicherungen, Tickets und Autowaschanlagen mussten von einem erfahrenen Fahrer verwaltet werden wird den alten Fahrer bitten, von Montag bis Samstag verschiedene Automodelle zu fahren. Zu diesem Zeitpunkt muss sich der alte Fahrer merken, welches Auto der Chef an welchem Tag fahren muss, also macht er dem Chef einen Vorschlag: Geben Sie jedem ein Auto . Jedes Auto hat einen Fahrer und für jedes Auto gibt es eine zuständige Person. Sagen Sie mir einfach „Hallo“, und ich schicke die entsprechende Person, um den Chef abzuholen it... ... package com.product.car.abstruct; Importieren com.product.car.abstruct.Car; öffentliche Klasse AudiDriver implementiert Car {
Paket com.product.car. implementieren;
import com.product.car.abstruct.Car;
öffentliche Klasse AudiDriver implementiert Car {
🎜> System.out.println("Die vier Kreise von Beamter werden wollen");
Car Manager (Veteran Triver)
Paket com.product.car.Manager; ‐ ‐ ‐ ‐ ‐ public Car driveCar();
🎜>
package com.product.car.managerImpl;
Import com.product.implement.audidriver; Paket com.product.car.managerImpl;
import com.product .car.abstruct .car;
Import com.product.car.implement.benzdriver; zmanager implementiert CarManager {
🎜>
Paket com .product.test; com.product.car.abstruct. Car; 🎜> public static void main(String [] args) löst eine Ausnahme aus{ BMW hat sich Liverpool vs. Villa Hier angesehen’s’ it ‐ to ’ s’ s ‐ ‐ ‐ ‐ Car driveCar = carManager.driveCar();
driveCar.drive(); 🎜>
Das Obige ist eine einfache Fabrik- und Fabrikmethode im Fabrikmuster. Vergleichen wir zunächst die Unterschiede zwischen diesen beiden Mustern und ihre jeweiligen Vorteile.
Programmdesign-Perspektive:
a. Eine einfache Factory hat keine abstrakte Klasse, sondern nur eine Factory-Klasse. Übergeben Sie die Parameter, die zum Erstellen von Objekten erforderlich sind, und die Factory-Klasse erstellt sie einheitlich.