Re: [問題] generic type parameter bound?
※ 引述《TsaiCF (Feng)》之銘言:
: : class A<T extends Object> { } // OK
: : class B<T extends Object[]> { } // compile-time error
: 我想是若 <T> = String[]
: void foo(T x){
: ???? y = x[0]; // ==> 無法判定????是什麼型別.
: }
Mmm... 可是以 Java 的 array 來說, 應該是可以判定的吧?
若 T extends Object[], 則 memberOf(T) 一定 extends Object...
所以如果這樣寫:
class Foo<T extends Bar[]> {
void func(T x) {
Bar b = x[0]; // memberOf(T) extends Bar
}
}
雖然現在的 Java 不允許, 但是 compiler 應該是可以判定型別的正確性才對阿?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.32.132.21
推
05/04 08:31, , 1F
05/04 08:31, 1F
→
05/04 10:29, , 2F
05/04 10:29, 2F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 6 之 8 篇):