>  기사  >  Java  >  Java 디자인 패턴의 브리지 모드 구현 방법

Java 디자인 패턴의 브리지 모드 구현 방법

WBOY
WBOY앞으로
2023-05-16 12:52:061160검색

브릿지 패턴이란 무엇인가요?

브릿지 패턴은 다음과 같이 정의됩니다. 추상화와 구현을 분리하여 독립적으로 변경할 수 있습니다. 상속 관계 대신 조합 관계를 사용하여 구현함으로써 추상화와 구현의 두 가변 차원의 결합 정도를 줄입니다.

장점

1. 추상화와 구현의 분리, 강력한 확장성

2. 열기 및 닫기 원칙을 준수합니다.

3. 합성 및 재사용 원칙을 준수합니다

4.

단점

집계 관계로 인해 추상화 계층에 구축된 개발자는 추상화를 위해 설계 및 프로그래밍해야 하며 시스템에서 독립적으로 변경되는 두 차원을 올바르게 식별해야 하므로 시스템을 이해하고 설계하는 것이 더 어려워집니다.

지식

추상적인 부분과 구현 부분을 분리하고, 둘 사이의 상속 관계를 취소하고, 대신 조합 관계를 사용할 수 있습니다.

브릿지 모드 구현

사례: 푸른 토끼 궁 주인이 스커트를 구입합니다

스커트는 색상과 스타일이라는 두 가지 차원으로 나뉩니다.

색상은 노란색과 빨간색입니다.

스타일은 긴 스커트와 짧은 스커트로 구분됩니다.

추상 역할: 색상

세련된 추상화 역할: 노란색과 빨간색

구현자 역할: 스타일

콘크리트 구현자 역할: 긴 스커트 그리고 짧은 치마

Color

Color 인터페이스, show() 추상 메서드

public interface Color {
    void show();
}

yellow
yellow 클래스를 선언하고 컬러 인터페이스

public class ColorYellow implements Color {
    @Override
    public void show() {
        System.out.println("黄色的");
    }
}

red
Red 클래스를 구현하고 컬러 인터페이스

public class ColorRed implements Color {
    @Override
    public void show() {
        System.out.println("红色的");
    }
}

Skirt

스커트 클래스, 색상 속성 선언 및 추상 메소드

abstract class Qun {
    protected Color color;
    protected Qun() {
    }
    protected Qun(Color color) {
        this.color = color;
    }
    public abstract void shows();
}

롱 스커트
스커트 클래스 상속, 추상 메소드 구현

public class QunChang extends Qun {
    protected QunChang() {
    }
    protected QunChang(Color color) {
        super(color);
    }
    @Override
    public void shows() {
        System.out.println("长裙");
        color.show();
    }
}

짧은 스커트
스커트 클래스 상속, 추상 메소드 구현

public class QunDuan extends Qun {
    protected QunDuan() {
    }
    protected QunDuan(Color color) {
        super(color);
    }
    @Override
    public void shows() {
        System.out.println("短裙");
        color.show();
    }
}

Test

new 를 실행하고 긴 스커트에 빨간색 객체를 매개변수로 전달합니다.

public class Demo {
    public static void main(String[] args) {
        Color color = new ColorRed();
        Qun qun = new QunChang(color);
        qun.shows();
    }
}

Java 디자인 패턴의 브리지 모드 구현 방법

위 내용은 Java 디자인 패턴의 브리지 모드 구현 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제