.............................

/// 处理器接口
interface Process<IN, OUT> {
    OUT process(IN r);
}

// 处理器工厂接口
interface IProcessFactory { Process<? super Serializable, ? super Serializable> getProcess();
}

// 处理器工厂
class ProcessFactory implements IProcessFactory {
    ProcessFactoryProxy proxy
= new ProcessFactoryProxy();

    @Override
   
public Process<? super Serializable, ? super Serializable> getProcess() {
       
return proxy.getProcess();
    }
}

//处理器工厂代理
class ProcessFactoryProxy implements IProcessFactory {
    @Override
   
public Process<? super Serializable, ? super Serializable> getProcess() {
[color
=#FF0000]        // 问题:编译器error
       
// Type mismatch: cannot convert from StringProcess to Process<? super Serializable,? super Serializable>
        return new StringProcess();[/color]
    }
}

// 处理器一个实现类
class StringProcess implements Process<String, String> {

    @Override
   
public String process(String r) {
       
return r;
    }
}

 

你可能感兴趣的:(.............................)