package org.zhy.design.demo;
/**
* 处理接口
* @author zhengyi
*
*/
public interface Handler {
//根据书的ID进行检索
public abstract void Search(int id);
//下一个处理者 参数为实现处理接口的实现类
public abstract void nextHandler(Handler han);
}
package org.zhy.design.demo;
import java.util.ArrayList;
import java.util.List;
/**
* 文学类的书籍检索
* @author zhengyi
*
*/
public class WenXue implements Handler{
private Handler han;//下一个处理者
private List<Integer> list; //模拟文学类书籍的编号
public WenXue(){
list=new ArrayList<Integer>();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
list.add(5);
}
@Override
public void nextHandler(Handler han) {
this.han=han; //给下一个处理者赋值
}
@Override
public void Search(int id) {
if(list.contains(id)){ //检索list中是否存在此ID的书籍,如果存在则打印
System.out.println("恭喜您,您检索的书籍是文学类的");
}else{ //如果没有此书籍则交给下一个处理者进行处理
if(han!=null){
han.Search(id);
}
}
}
}
package org.zhy.design.demo;
import java.util.ArrayList;
import java.util.List;
/**
* 计算机类的书籍
* @author zhengyi
*
*/
public class JiSuanJi implements Handler {
private Handler han;
private List<Integer> list;
public JiSuanJi(){
list=new ArrayList<Integer>();
list.add(6);
list.add(7);
list.add(8);
list.add(9);
list.add(10);
}
@Override
public void nextHandler(Handler han) {
this.han=han;
}
@Override
public void Search(int id) {
if(list.contains(id)){
System.out.println("恭喜你,此书记在计算机类");
}else{
if(han!=null){
han.Search(id);
}
}
}
}
package org.zhy.design.demo;
public class Appliction {
private Handler jisuanji,wenxue;
public void createHandler(){
jisuanji=new JiSuanJi();
wenxue=new WenXue();
jisuanji.nextHandler(wenxue); //指定下一个处理者
}
public void search(int id){
jisuanji.Search(id); //第一个处理者进行筛选处理
}
public static void main(String[] args) {
Appliction app=new Appliction();
app.createHandler();
app.search(10);
}
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有