Rumah  >  Artikel  >  Java  >  Ringkaskan dan susun corak penghias JAVA (contoh terperinci)

Ringkaskan dan susun corak penghias JAVA (contoh terperinci)

WBOY
WBOYke hadapan
2022-05-05 18:48:192398semak imbas

Artikel ini membawakan anda pengetahuan yang berkaitan tentang java Ia terutamanya memperkenalkan isu berkaitan tentang corak reka bentuk, terutamanya kandungan yang berkaitan dengan corak penghias tanpa mengubah objek sedia ada tambah secara dinamik beberapa corak tanggungjawab pada objek saya harap ia akan membantu semua orang.

Ringkaskan dan susun corak penghias JAVA (contoh terperinci)

Pembelajaran yang disyorkan: "tutorial video java"

Apakah corak penghias

Takrifan corak penghias: merujuk kepada corak yang menambahkan beberapa tanggungjawab secara dinamik pada objek (iaitu, menambah fungsi tambahannya) tanpa mengubah struktur objek sedia ada Ia tergolong dalam corak Struktur objek.

Kelebihan

1. Penghias ialah pelengkap yang berkuasa untuk warisan dan lebih fleksibel daripada pewarisan -dalam Sedia untuk digunakan
2. Kesan yang berbeza boleh dicapai dengan menggunakan kelas hiasan yang tidak digunakan dan susunan serta gabungan kelas hiasan ini
3. Mod penghias mematuhi sepenuhnya prinsip pembukaan dan penutup

Kelemahan

Corak penghias akan menambah banyak subkelas, dan penggunaan yang berlebihan akan meningkatkan kerumitan program.

Mata Pengetahuan

Biasanya, melanjutkan kefungsian kelas dicapai menggunakan warisan. Walau bagaimanapun, pewarisan mempunyai ciri statik dan tahap gandingan yang tinggi, dan apabila fungsi lanjutan meningkat, subkelas akan berkembang. Jika anda menggunakan perhubungan gubahan untuk mencipta objek pembalut (iaitu, objek hiasan) untuk membalut objek sebenar dan menyediakannya dengan fungsi tambahan sambil mengekalkan struktur kelas objek sebenar tidak berubah, ini ialah matlamat corak penghias. Mari analisa struktur asas dan kaedah pelaksanaannya.

Pelaksanaan corak penghias

Kes: Hei Xiaohu menangkap Tujuh Wira dan juga membakar Hongmao
Peranan Komponen Abstrak: Tujuh Wira
Komponen Konkrit peranan: Kucing Pelangi
Peranan Penghias Abstrak: Tambah bahan
Peranan Penghias Konkrit: Tambah garam dan jintan manis.

Qixia

Antara muka Qixia, mengisytiharkan kaedah abstrak barbeku

public interface Qi {
    void show();}

Hongmao

Hong The cat class melaksanakan antara muka Qixia dan melaksanakan kaedah memanggang kucing pelangi

public class Hong implements Qi {

    @Override
    public void show() {
        System.out.println("烧烤一个虹猫");
    }}

menambah bahan

Ini ialah penghias abstrak yang melaksanakan antara muka Qixia , isytiharkan atribut Qixia untuk memanggil kaedah barbeku Qixia

public class JiaLiao implements Qi {
    private Qi qi;

    JiaLiao() {
    }

    JiaLiao(Qi component) {
        this.qi = component;
    }

    @Override
    public void show() {
        qi.show();

    }}

tambah garam

mewarisi kelas abstrak dan mengatasi kaedah barbeku, Menambah garam

public class Yan extends JiaLiao {
    private Qi qi;

    Yan() {
    }

    Yan(Qi qi) {
        super(qi);
    }

    @Override
    public void show() {
        super.show();
        add();
    }

    public void add() {
        System.out.println("加盐");
    }}

Menambah jintan putih

Mewarisi kelas abstrak dan menulis semula kaedah barbeku, menambah jintan putih

public class ZiRan extends JiaLiao {
    private Qi qi;

    ZiRan() {
    }

    ZiRan(Qi qi) {
        super(qi);
    }

    @Override
    public void show() {
        super.show();
        add();
    }

    public void add() {
        System.out.println("加孜然");
    }}

Ujian

baharu kucing pelangi dan bakar.
Tambah sedikit garam
Tambah sedikit garam dan jintan putih

public class Demo {
    public static void main(String[] args) {
        Qi qi = new Hong();
        qi.show();
        System.out.println();
        Qi qi1 = new Yan(qi);
        qi1.show();
        System.out.println();
        Qi qi2 = new ZiRan(qi1);
        qi2.show();
    }}

Ringkaskan dan susun corak penghias JAVA (contoh terperinci)

Ringkasan

Bukan sahaja anda boleh memanggang kucing pelangi tetapi juga Anda boleh memanggang Tujuh Wira yang lain, cuma tambah kelas untuk melaksanakan antara muka Tujuh Wira.
Selain itu, menambah garam atau jintan manis tidak akan mengubah kualiti daging asal kucing pelangi.

Pembelajaran yang disyorkan: "tutorial video java"

Atas ialah kandungan terperinci Ringkaskan dan susun corak penghias JAVA (contoh terperinci). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:csdn.net. Jika ada pelanggaran, sila hubungi admin@php.cn Padam