Contents
Generic Classes
- class MyClass <T> { … }
- class MyClass <T,V> { … }
- class MyClass <T> implements SomeInterface<T> { … }
- class MyClass <T> extends SomeClass { … }
- class MyClass <T> extends GenericClass <T> { … }
- class MyClass <T,V> extends GenericClass <T> implements SomeInterface<V> { … }
- class MyClass <T> extends GenericClass <T> implements SomeInterface<String> { … }
- class MyClass <T,V> extends GenericClass <T> implements SomeInterface<V>, OtherInterface { … }
- class MyClass <T extends SomeClass> { … }
- class MyClass <T extends SomeClass & SomeInterface> { … }
- class MyClass <T extends SomeClass & SomeInterface & OtherInterface> { … }
Generic Interfaces
- interface MyInterface <T> { … }
- interface MyInterface <T extends Comparable<T>> { … }
Generic Constructors in Non-Generic Classes
- <T> MyConstructor (T obj) { … }
- <T extends SomeClass> MyConstructor (T obj) { … }
Generic Methods in Non-Generic Classes
- <T> void foo(T obj){ … }
- <T> void foo(T obj1, T obj2) { … }
- <T> T foo(T obj) { … }
- <T extends SomeClass> void foo(T obj) { … }
- <T extends Comparable<T>, V extends T> void foo(T obj1, V obj2) { … }
- <T extends SomeClass, V extends T> void foo(GenClass<T> obj1, GenClass<V> obj2) { … }
Wildcards
- GenericClass<?> field;
- MyClass(GenericClass<?> obj) { … }
- someType myMethod (GenericClass<?> obj) { … }
- someType myMethod (GenericClass<? extends SuperClass> obj) { … }
- someType myMethod (GenericClass<? super SubClass> obj) { … }
© 2017 – 2019, Eric. All rights reserved.