[디자인패턴]프록시 패턴

gov's avatar
Nov 12, 2024
[디자인패턴]프록시 패턴
💡
Proxy Pattern 다른 객체에 대한 접근을 제어하기 위해 대리 객체를 사용
  • 프록시 객체는 실제 객체와 동일한 인터페이스 구현하여 실제 객체처럼 작동. 이를 통해 접근 제어 및 추가 기능 수행
public class App { public static void main(String[] args) { Doorman doorman = new Doorman(); DoormanProxy proxy = new DoormanProxy(doorman); Animal cat = new Cat(); Animal mouse = new Mouse(); proxy.hello(cat); proxy.hello(mouse); } }
public class DoormanProxy { // 도어맨을 호출하고 animal 쫓아내기 private Doorman doorman; public DoormanProxy(Doorman doorman) { this.doorman = doorman; } // 행위 만들기 public void hello(Animal animal) { System.out.println("안녕"); doorman.쫓아내(animal); } }
public class Doorman { public void 쫓아내(Animal animal) { System.out.println(animal.getName() + " 쫓아내"); } }
public abstract class Animal { public abstract String getName(); }
public class Cat extends Animal { private String name = "고양이"; public String getName() { return name; } }
public class Mouse extends Animal { private String name = "쥐"; public String getName() { return name; } }
 
Share article

goho