프로 그래 밍 내공 수련 의 디자인 모델 - 책임 체인 모델
                                            
 1853 단어  책임 체인 모드
                    
더 먼 길 을 가기 위해 서 는 기초 부터 잡 고 매일 한 걸음 씩 전진 합 니 다!
비록 곧 졸업 을 앞 두 고 있 지만, 비록 길이 멀 지만, 꿈 이 없 으 면 굳이 먼 곳 에 갈 필요 가 있 겠 는가!
package edu.designpattern.chainofresponsibility;
import java.util.ArrayList;
import java.util.List;
import org.junit.Test;
/**
 *        
 *     
 * 
 * @author helingfeng
 *     :2015/04/28
 **/
//     
interface Filter {
	public String doFilter(String result);
}
/**       **/
public class FilterChain implements Filter{
	//         
	List<Filter> filters = new ArrayList<Filter>();
	
	//         
	public String doFilter(String str) {
		String result = str;
		for(Filter filter : filters){
			result = filter.doFilter(result);
		}
		return result;
	}
	
	//        
	public FilterChain addFilter(Filter f){
		this.filters.add(f);
		return this;
	}
	
	//  
	@Test
	public void test(){
		String str = "<a>      </a>";
		FilterChain chain = new FilterChain();
		HTMLFilter htmlFilter = new HTMLFilter();
		KeysFilter keysFilter = new KeysFilter();
		chain.addFilter(htmlFilter).addFilter(keysFilter);
		System.out.println(chain.doFilter(str));
	}
}
/**HTML      
 * 
 *   <>       []
 * **/
class HTMLFilter implements Filter{
	//       
	public String doFilter(String result) {
		result = result.replaceAll("<", "[").replaceAll(">", "]");
		return result;
	}
}
/**KEY         
 *            
 **/
class KeysFilter implements Filter{
	
	String[] keys = {"  ","  ","  "}; 
	
	//       
	public String doFilter(String result) {
		for(String key : keys){
			result = result.replaceAll(key, "  ");
		}
		return result;
	}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
The Chain Of Responsibility (1)바로 이렇다.디자인 모델 도 모두 소박 한 사고 에서 일련의 정 리 를 통 해 얻 은 것 이다.다음은 책임 체인 의 진화 의 길 을 이야기 하 겠 습 니 다. 책임 체인 도 실제 개발 에서 끊임없이 승화 되 어 얻 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.