【问题标题】:Returning different types from same method in Java interface从Java接口中的相同方法返回不同类型
【发布时间】:2015-02-05 13:39:08
【问题描述】:

您好,我想定义一个接口,其中我有一个方法,该方法返回实现它的类的对象。我知道我可能必须使用“T”之类的东西,但我就是无法正确使用。

我的想法是让一些类实现一个接口,这些类具有从 Json 字符串创建该对象的静态方法。我需要这样,因为在某些情况下我需要进行自定义反序列化。你知道最好的方法吗?

提前致谢

【问题讨论】:

  • 我想你正在寻找Generics。即:Something<T> -> Something<String>Something<Integer>,等等。

标签: java types interface


【解决方案1】:

你能做的最接近的事情是

interface MyInterface<T> {
    T deserialize(String json);
}

class MyClass implements MyInterface<MyClass>

但您不能强制执行静态方法。

我建议你看看 json 库,例如 Jackson 或 Gson。

【讨论】:

    猜你喜欢
    • 2013-08-14
    • 1970-01-01
    • 2012-07-05
    • 1970-01-01
    • 1970-01-01
    • 2013-08-11
    • 2017-05-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多