Java Generic Interface Return Type

cplusplusrat

Migrating to Java from C++.

I have a third party code with an interface I am required to implement which goes something like this.

public interface Foo<T>{
       public T doSomething();
}

I want to implement this interface so that I can call doSomething() and get 3 different classes A, B and C which extend a common base Z as below.

public class A extends Z{...};
public class B extends Z{...};
public class C extends Z{...};

I could not find any way of avoiding writing the following 3 classes.

public class ARet implements Foo<A>{...}
public class BRet implements Foo<B>{...}
public class CRet implements Foo<C>{...}

For the given interface Foo, is it not possible to write an implementation which returns T extends Z something which would look like public class Ret implements Foo<T extends Z>{...}. This does not appear to work. Is there any way of avoiding the 3 classes or there is no way around it?

Eran

If you want the implementation of the interface to be generic, you need to declare T as a generic type parameter of Ret :

public class Ret<T extends Z> implements Foo<T>{...}

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Java

Incompatible types in generic return type method (Java)

From Java

Java automatic return type covariance with generic subclassing

From Java

Java instantiating a generic type which implements an interface

From Java

Java 8 - Inferring generic return type with lambdas

From Java

Java generic return type

From Java

Return Type of Java Generic Methods

From Java

Java generic function: how to return Generic type

From Java

How to check if a generic type implements a specific type of generic interface in java?

From Java

Java weird generic return type

From Java

Java Generic on method with Functional Interface parameter type

From Java

Inferring type of class arguments in Java generic interface

From Java

Overriding generic return type from interface

From Java

Return type of generic method (Java)

From Dev

Unbound generic return type in Java

From Dev

Java Generic Interface Return Generics

From Dev

Implementation of generic interface with specific type in Java

From Java

Why does the compiler not enforce the return type value for a generic that extends an interface?

From Dev

type.IsAssignableFrom from generic interface<object> return false

From Dev

java generic method return type

From Dev

Generic type in interface method Java

From Dev

How does one define a generic wrapper interface type and use it as method return type in java?

From Dev

Java Interface - Custom return Type?

From Dev

Java return type generic

From Dev

ArrayList return type in generic interface - <identifier> expected

From Dev

Return generic interface implementation with different generic type

From Dev

Implementing class of Java interface with generic types: warning "Type safety: The return type ... needs unchecked conversion to conform"

From Dev

Return class of generic type in default interface method

From Dev

C# interface method with generic return type of implements interface (Bounds)

From Dev

Generic return type of interface not checked correctly

Related Related

  1. 1

    Incompatible types in generic return type method (Java)

  2. 2

    Java automatic return type covariance with generic subclassing

  3. 3

    Java instantiating a generic type which implements an interface

  4. 4

    Java 8 - Inferring generic return type with lambdas

  5. 5

    Java generic return type

  6. 6

    Return Type of Java Generic Methods

  7. 7

    Java generic function: how to return Generic type

  8. 8

    How to check if a generic type implements a specific type of generic interface in java?

  9. 9

    Java weird generic return type

  10. 10

    Java Generic on method with Functional Interface parameter type

  11. 11

    Inferring type of class arguments in Java generic interface

  12. 12

    Overriding generic return type from interface

  13. 13

    Return type of generic method (Java)

  14. 14

    Unbound generic return type in Java

  15. 15

    Java Generic Interface Return Generics

  16. 16

    Implementation of generic interface with specific type in Java

  17. 17

    Why does the compiler not enforce the return type value for a generic that extends an interface?

  18. 18

    type.IsAssignableFrom from generic interface<object> return false

  19. 19

    java generic method return type

  20. 20

    Generic type in interface method Java

  21. 21

    How does one define a generic wrapper interface type and use it as method return type in java?

  22. 22

    Java Interface - Custom return Type?

  23. 23

    Java return type generic

  24. 24

    ArrayList return type in generic interface - <identifier> expected

  25. 25

    Return generic interface implementation with different generic type

  26. 26

    Implementing class of Java interface with generic types: warning "Type safety: The return type ... needs unchecked conversion to conform"

  27. 27

    Return class of generic type in default interface method

  28. 28

    C# interface method with generic return type of implements interface (Bounds)

  29. 29

    Generic return type of interface not checked correctly

HotTag

Archive