Rumah > Java > javaTutorial > Bagaimana untuk melaksanakan kod corak kilang abstrak di Jawa?

Bagaimana untuk melaksanakan kod corak kilang abstrak di Jawa?

WBOY
Lepaskan: 2023-05-08 22:01:06
ke hadapan
1364 orang telah melayarinya

Untuk menyelesaikan masalah corak kaedah kilang: kilang tertentu hanya boleh mencipta satu jenis produk, tetapi dalam proses sebenar, kilang selalunya perlu menghasilkan banyak produk Dalam kes ini, corak kilang abstrak boleh digunakan .

1. Penyelesaian Corak Kilang Abstrak

Definisi: Menyediakan antara muka untuk mencipta satu siri objek yang berkaitan atau saling bergantung tanpa menyatakan kelas khusus mereka. Membolehkan kilang menghasilkan berbilang produk.

2. Gambarajah Kelas Kilang Abstrak UML

Bagaimana untuk melaksanakan kod corak kilang abstrak di Jawa?

3. disediakan Antara muka untuk mencipta produk termasuk kaedah antara muka berbilang untuk mencipta produk, yang boleh mencipta berbilang produk pada tahap yang berbeza

Kilang Konkrit (ConcreteFactory): melaksanakan kaedah yang ditakrifkan oleh kilang abstrak untuk melengkapkan penciptaan produk tertentu

Produk abstrak (Produk): mentakrifkan spesifikasi produk, menerangkan ciri utama dan prestasi produk

Produk konkrit (ConcreteProduct): melaksanakan kaedah mentakrifkan produk abstrak, dan mempunyai kilang konkrit untuk mencipta produk , hubungan satu-ke-banyak antara kilang tertentu dan produk khusus

4 Pelaksanaan kod

Pelaksanaan kaedah kilang abstrak:

public interface AbstractFactory {
    public Product1 createProduct1();
    public Product2 createProduct2();
}

public class ConcreteFactory1 implements AbstractFactory {
    @Override
    public Product1 createProduct1() {
        System.out.println("具体工厂1产生具体产品1...");
        return new ConcreteProduct1();
    }

    @Override
    public Product2 createProduct2() {
        System.out.println("具体工厂1产生具体产品2...");
        return new ConcreteProduct2();
    }
}
Salin selepas log masuk

Langkah penggunaan:

    Buat kelas produk abstrak dan tentukan kaedah awam produk
  • Buat kelas produk konkrit (laksanakan antara muka produk abstrak) dan tentukan produk khusus yang dijana
  • Buat kelas kilang abstrak dan tentukan antara muka awam kilang tertentu Kelas kilang boleh mencipta produk dengan tahap yang berbeza
  • Buat kelas kilang konkrit dan tentukan kaedah untuk mencipta contoh produk khusus yang sepadan
  • Pemanggil memanggil kaedah kelas kilang khusus untuk mencipta kejadian produk khusus yang berbeza
  • 5 Satu lagi penerokaan kaedah kilang abstrak

Menyelesaikan masalah: Setiap kilang hanya boleh mencipta satu jenis produk, yang merupakan kelemahan kaedah kilang

6. Kebaikan dan keburukan

Kebaikan:

    Anda boleh bersama-sama menguruskan produk pelbagai peringkat yang dikaitkan dengan produk dalam kelas kilang tanpa perlu memperkenalkan kelas baharu secara khusus untuk pengurusan
  • Kilang abstrak meningkatkan kebolehskalaan program Apabila menambah keluarga produk baharu, tidak perlu mengubah suai kod sumber untuk memenuhi prinsip pembukaan dan penutupan
  • .

  • Kelemahan:

    Apabila keluarga produk baharu Apabila menambah jenis produk, semua kelas kilang perlu diubah suai, yang meningkatkan abstraksi dan kesukaran memahami sistem
  • 7. Contoh yang boleh digunakan

Disediakan sebagai Penghormatan Raja Terdapat banyak wira dibahagikan kepada penembak, pembantu, jungler, kereta kebal dan profesion lain. Profesi yang berbeza mempunyai kemahiran dan sifat yang berbeza. Isytiharkan berbilang subkategori kilang seperti kereta kebal, ahli sihir dan pembunuh upahan, dan setiap kilang boleh menghasilkan aplikasi kemahiran yang sepadan.

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan kod corak kilang abstrak di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan