Rumah >Java >javaTutorial >Apakah corak reka bentuk yang biasa digunakan dalam rangka kerja java?

Apakah corak reka bentuk yang biasa digunakan dalam rangka kerja java?

WBOY
WBOYasal
2024-06-05 18:47:00391semak imbas

Corak reka bentuk rangka kerja Java yang diperlukan: Corak Singleton: memastikan bahawa kelas dibuat seketika sahaja dan menyediakan pusat akses global. Corak Kilang: Bertanggungjawab untuk mencipta objek, membenarkan penggunaan pelbagai jenis objek tanpa mengubah kod. Corak strategi: Mentakrifkan keluarga algoritma dan membenarkan pemilihan algoritma tertentu. Corak Penghias: Memanjangkan fungsi objek secara dinamik tanpa mengubah suai objek asal. Corak proksi: Sediakan objek untuk bertindak sebagai proksi untuk objek lain, mengawal akses kepada objek asal atau meningkatkan fungsinya.

Apakah corak reka bentuk yang biasa digunakan dalam rangka kerja java?

Corak reka bentuk yang mesti ada dalam rangka kerja Java

Corak reka bentuk ialah struktur kod yang terbukti, universal dan boleh digunakan semula. Mereka menyediakan penyelesaian yang elegan dan boleh diselenggara kepada masalah pengaturcaraan biasa. Dalam rangka kerja Java, pemahaman yang mendalam tentang corak ini adalah penting. Berikut ialah beberapa corak yang paling biasa:

1. Corak Singleton:
Memastikan kelas dibuat seketika sahaja. Corak ini memudahkan pengurusan sumber dan ketekalan dengan menyediakan pusat akses global.

public class Singleton {
    private static Singleton instance;
 
    private Singleton() {
        // Private constructor to prevent external instantiation
    }
 
    public static Singleton getInstance() {
        if (instance == null) {
            instance = new Singleton();
        }
        return instance;
    }
}

2. Corak kilang:
bertanggungjawab untuk mencipta objek tanpa menyatakan kelas konkritnya. Ia membolehkan aplikasi menggunakan pelbagai jenis objek tanpa mengubah kod.

public interface ShapeFactory {
    Shape createShape(String type);
}

public class CircleFactory implements ShapeFactory {
    @Override
    public Shape createShape(String type) {
        if (type.equals("CIRCLE")) {
            return new Circle();
        } else {
            return null;
        }
    }
}

3. Corak strategi:
Tentukan satu siri algoritma dan benarkan pelanggan memilih algoritma tertentu tanpa menjejaskan kod lain. Ia menyediakan cara yang boleh dikonfigurasikan secara longgar untuk mengendalikan tingkah laku yang berbeza.

public interface PaymentStrategy {
    void pay(double amount);
}

public class CreditCardPaymentStrategy implements PaymentStrategy {
    @Override
    public void pay(double amount) {
        // Process credit card payment
    }
}

4. Corak Penghias:
Tambahkan tanggungjawab tambahan pada objek secara dinamik. Ia membolehkan memanjangkan fungsi objek asal tanpa mengubah suainya.

public class Shape {
    protected String color;
 
    public String getColor() {
        return color;
    }

    public void setColor(String color) {
        this.color = color;
    }
}

public class DecoratorShape extends Shape {
    protected Shape decoratedShape;
 
    public DecoratorShape(Shape decoratedShape) {
        this.decoratedShape = decoratedShape;
    }

    @Override
    public String getColor() {
        return decoratedShape.getColor();
    }
}

5. Corak proksi:
Sediakan objek untuk bertindak sebagai proksi untuk objek lain. Ia boleh digunakan untuk mengawal akses kepada objek asal atau meningkatkan fungsinya.

public class Service {
    public void doSomething() {
        // Perform some service
    }
}

public class ServiceProxy implements Service {
    private Service service;
 
    public ServiceProxy(Service service) {
        this.service = service;
    }

    @Override
    public void doSomething() {
        // Perform additional logic
        service.doSomething();
        // Perform additional logic
    }
}

Ini hanyalah beberapa corak reka bentuk yang biasa digunakan dalam rangka kerja Java. Menguasai corak ini adalah penting untuk membina aplikasi yang boleh diselenggara, berskala dan cekap.

Atas ialah kandungan terperinci Apakah corak reka bentuk yang biasa digunakan dalam rangka kerja java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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