⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 filter.java

📁 软件体系结构 KWIC三种风格的java实现
💻 JAVA
字号:
package PipeKwic;

/**
 * 过滤器有输入管道和输出管道两个组件。
 * 过滤器将输入管道的数据转换成要求的数据,并将转换好的数据写到输出管道。
 * 输入管道和输出管道是相对的,即在某个阶段输出管道接收数据,在下一阶段,
 * 输出管道便提供数据,成为输入管道,输入管道同理。每个过滤器在它的线程
 * 空间中运行
 */
public abstract class Filter implements Runnable {

	protected Pipe input;
	protected Pipe output;
	private boolean is_started = false;
	
	/**
	 * 默认构造器
	 * @param input 输入管道
	 * @param output 输出管道
	 */
	public Filter(Pipe input, Pipe output) {
		this.input = input;
		this.output = output;
	}
	
	/**
	 * 调用之后则线程开始执行
	 */
	public void start() {
		if(!is_started) { //防止多次调用
			is_started = true;
			Thread thread = new Thread(this);
			thread.start();
		}
	}
	
	/**
	 * 线程的run方法
	 */
	public void run() {
		transform();
	}
	
	/**
	 * 该方法将输入管道的数据转换成要求的数据,并将转换好的数据写到输出管道
	 * 子类实现该抽象方法
	 */
	abstract protected void transform();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -