Rumah > Java > javaTutorial > Corak reka bentuk dan anti-corak yang biasa digunakan dalam rangka kerja Java

Corak reka bentuk dan anti-corak yang biasa digunakan dalam rangka kerja Java

WBOY
Lepaskan: 2024-06-04 17:49:07
asal
347 orang telah melayarinya

Corak Reka Bentuk dan Anti-Corak dalam Rangka Kerja Java: Corak Reka Bentuk: Corak Kilang: Memudahkan penciptaan objek tanpa menentukan kelas konkrit. Mod Singleton: Pastikan hanya terdapat satu contoh untuk memudahkan penciptaan objek global. Anti-Corak: Kelas Tuhan: Terlalu banyak tingkah laku dan tanggungjawab, menjadikan kod sukar untuk dikekalkan. Sosej anti-corak: proses bergantung antara satu sama lain, menjadikan kod sukar untuk dikesan dan dilaksanakan.

Corak reka bentuk dan anti-corak yang biasa digunakan dalam rangka kerja Java

Corak reka bentuk biasa dan anti-corak dalam rangka kerja Java

Dalam rangka kerja Java, corak reka bentuk dan anti-corak digunakan secara meluas untuk mencipta kod yang fleksibel dan boleh diselenggara. Artikel ini akan memperkenalkan beberapa corak reka bentuk biasa dan anti-corak dan menunjukkan penggunaannya melalui kes praktikal.

Corak Reka Bentuk

Corak Kilang:
Corak kilang digunakan untuk mencipta contoh objek tanpa menyatakan kelas konkritnya. Ia membolehkan penciptaan pelbagai jenis objek tanpa mengubah suai kod klien.

public class Factory {

    public static Shape getShape(String type) {
        switch (type) {
            case "Circle":
                return new Circle();
            case "Rectangle":
                return new Rectangle();
            default:
                return null;
        }
    }
}

public class Main {

    public static void main(String[] args) {
        Shape shape = Factory.getShape("Circle");
        shape.draw();  // 输出:绘制圆形
    }
}
Salin selepas log masuk

Corak singleton:
Corak singleton memastikan bahawa kelas hanya mempunyai satu contoh. Ia digunakan untuk mencipta objek global seperti sambungan pangkalan data.

public class Singleton {

    private static Singleton instance;

    private Singleton() {}

    public static Singleton getInstance() {
        if (instance == null) {
            instance = new Singleton();
        }
        return instance;
    }
}

public class Main {

    public static void main(String[] args) {
        Singleton instance1 = Singleton.getInstance();
        Singleton instance2 = Singleton.getInstance();

        System.out.println(instance1 == instance2);  // 输出:true
    }
}
Salin selepas log masuk

Anti-Corak

God Object Anti-Corak:
God class ialah kelas yang mengandungi terlalu banyak tingkah laku dan tanggungjawab. Ini menjadikan kod sukar untuk dikekalkan dan difahami.

public class GodObject {

    // 大量的方法和字段...

    public void doSomething() {
        // 复杂的行为...
    }

    public void doSomethingElse() {
        // 另一个复杂的行为...
    }
}
Salin selepas log masuk

Anticorak Kod Spaghetti:
Anticorak Kod Spaghetti ialah satu proses di mana terdapat banyak kesalingbergantungan dalam kod. Ini menyukarkan untuk memahami dan menjejaki pelaksanaan kod.

public class SpaghettiCode {

    public void foo() {
        bar();
        if (condition) {
            baz();
        } else {
            qux();
        }
    }

    public void bar() {
        // 依赖于 foo()
    }

    public void baz() {
        // 依赖于 foo()
    }

    public void qux() {
        // 依赖于 foo()
    }
}
Salin selepas log masuk

Dengan memahami dan menggunakan corak reka bentuk dan anti-corak ini, pembangun boleh mencipta kod rangka kerja Java yang lebih mantap dan boleh diselenggara.

Atas ialah kandungan terperinci Corak reka bentuk dan anti-corak yang biasa digunakan dalam rangka kerja Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
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