Java Study Notes (Generic 1)

1. You can only use extends when defining , because super is logically unreasonable.

2. You can use super when you use it, and you can use extends . -sample--------------- class A<T extends CharSequence> {   A(T t) {} }   --> OK class A<T super CharSequence> {   A(T t) {} }   --> FAIL String s = "s"; Intger i = 1; A<String> a = new A<>(s); --> OK A<? extends String> a = new A<>( s); -->OK A<?> a = new A<>(s); --> OK A<?> a = new A<>(i); --> FAIL A<? super String> a = new A<>(s); -->OK
























Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=326566583&siteId=291194637