정의 : 여러 객체와 클래스 간의 의사 소통의 복잡성을 줄이는 데 사용됩니다. 중재자 패턴은 행동 패턴에 속합니다.
특징:
1. 클래스의 복잡성을 줄이고 일대일을 일대일로 전환하십시오.
2. 다양한 클래스 사이의 분리.
3. Dimit 원리를 준수합니다.
엔터프라이즈 수준 개발 및 공통 프레임 워크의 응용 프로그램 : MVC 모드의 C
구체적인 예 :
공개 클래스 데모 {public static void main (String [] args) {mediator m = new Mediator (); 부서 D1 = 새로운 부서 (M, "개발 부서"); 부서 D2 = 새로운 부서 (M, "재무 부서"); 부서 D3 = 새로운 부서 (M, "계획 부서"); M.ADD (D1, "DEP"); M.add (D2, "Fin"); M.ADD (D3, "C"); d2.apply ( "개발할 프로젝트가있다", "dep"); D1. Apply ( "개발 프로젝트에는 자금이 필요합니다", "Fin"); D1. Apply ( "프로젝트는 개발되었으며 계획 및 게시되어야한다", "C"); d3.apply ( "기자 회견은 자금이 필요합니다", "핀"); }} 클래스 부서 {개인 문자열 이름; 개인 중재자 중재자; 공공 부서 (중재자 중재자, 문자열 이름) {this.name = 이름; this.mediator = 중재자; } public String getName () {return name; } public void setName (문자열 이름) {this.name = 이름; } public void apply (문자열, 문자열 coderinate) {system.out.println ( "우리는"+this.getname ()+","+the+", 도움이 필요합니다"); Mediator.dispatch (이, 사물, 좌표); } public void handle (문자열 이름, 문자열 the) {System.out.println ( "우리는"+this.getName ()+","+name+"도움이 필요합니다. 즉시 그들의 업무를 처리합니다"); System.out.println("************************************************************************************************************************************ ******************************************************************************************************************************************************************************************************************, ******************************************************************************************************************************************************************************************************************************************************, ******************************************************************************************************************************************************************************************************************, ******************************************************************************************************************************************************************************************************************************************************, ******************************************************************************************************************************************************************************************************************, ******************************************************************************************************************************************************************************************************************************************************, ******************************************************************************************************************************************************************************************************************, *중개 객체, 모든 동료 객체를 보유하며 다양한 부서의 조정 작업을 예약 할 책임이 있습니다.*/클래스 중재자 {개인 문자열 이름; 개인지도 <문자열, 부서>지도 = New Hashmap <문자열, 부서> (); public void add (부서 d, 문자열 이름) {this.map.put (이름, d); } public void Dispatch (부서 dpt, 문자열, 문자열 좌표) {department d = map.get (coordinate); d.handle (dpt.getname (), thing); }}중개 모드와 프록시 모드의 차이점 :이 두 모드의 모드에 대해 처음 들었을 때이 두 모드는 동일한 모드 인 것처럼 보였지만이 두 모드는 완전히 다릅니다. 프록시 모드는 주로 실제 객체를 숨기고 다른 사람들이 특정 작업 세부 사항을 알지 못하게하는 데 사용되었습니다. 중개 모드는 주로 여러 객체와 여러 객체의 상호 작용을 복잡하게하는 데 사용되었습니다. 이러한 상호 작용을 단순화하기 위해 터미네이터 모드가 발견되었습니다.