Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/370.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
理解Java转换器接口_Java_Interface - Fatal编程技术网

理解Java转换器接口

理解Java转换器接口,java,interface,Java,Interface,我需要添加名为Converter的接口来提供转换功能。我会这样写: public interface Converter<Destination, Source>{ public Destrination convert(Source o); } 公共接口转换器{ 公共解除限制转换(源o); } 我使用的是第三方库,它们总是有或多或少满足我需求的转换器接口。我应该考虑使用它们而不是添加新的接口吗?我想说不,最好创建一个新接口,否则我们会将代码耦合到我们使用的接口库中 那么

我需要添加名为
Converter
的接口来提供转换功能。我会这样写:

public interface Converter<Destination, Source>{
    public Destrination convert(Source o);
}
公共接口转换器{
公共解除限制转换(源o);
}
我使用的是第三方库,它们总是有或多或少满足我需求的转换器接口。我应该考虑使用它们而不是添加新的接口吗?我想说不,最好创建一个新接口,否则我们会将代码耦合到我们使用的接口库中


那么,什么是正确的选择呢?

既然类路径中有Guava,就不需要引入一个与Guava相同的全新界面,它的定义如下:

public interface Function<F,T> {
    public T apply(F input);
}
公共接口功能{
公共T应用(F输入);
}

这一定与@khelwood不同吗?我在Java 7中。很抱歉,我忘了添加这个重要的细节。@khelwood不,接口完全满足我的需要。@St.Antario,你的类路径中有番石榴吗?它甚至比Java8的更好。不用那么啰嗦了,谢谢。