gpt4 book ai didi

java - 我可以使用 Java 泛型在 Java 中对同一接口(interface)进行不同的实现吗?

转载 作者:行者123 更新时间:2023-11-30 05:55:48 28 4
gpt4 key购买 nike

假设我想使用泛型将一个类转换为另一个类。我可以这样做吗?

例如。

Class BConvertImpl implements Converter
{
A toA(Class B);
void update(Class A, Class B);
}

Class CConverterImpl implements Converter
{
A toA(Class C);
void update(Class A, Class C);
}

我可以使用泛型来实现吗?

我对 Java 中的泛型还很陌生。有人可以帮我解决这个问题吗?

谢谢

最佳答案

是的:您需要输入您的Converter 类(并将该方法简单命名为to):

/**
* @param <F> The "from" type
* @param <T> The "to" type
*/
interface Converter<F, T> {

T to(F from);

void update(T to, F from);
}

class BConvertImpl implements Converter<B, A> {

A to(B from) { /* some impl */ }

void update(A to, B from) { /* some impl */ }
}

class CConverterImpl implements Converter<C, A> {

A to(C from) { /* some impl */ }

void update(A to, C from) { /* some impl */ }
}

关于java - 我可以使用 Java 泛型在 Java 中对同一接口(interface)进行不同的实现吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7844007/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com