本文目錄一覽:
java泛型接口是怎麼一回事,幹什麼用的
這個啊 泛型好處多了。
有了泛型 你可以再hashtable中存任何類型的value 包括自定義的類
例如。有一個類是 class client{}
HashtableString ,client ht = new HashtableString ,client();
很方便的東西。讓你代碼更完美的。
=============================接話獻佛========================
應該是我很久沒有好好學技術了,有時候想用的時候卻發現不會寫,比如今天遇到了泛型接口,所以要記錄一下,這樣才能更明白…
在這裡我並不想說泛型接口怎麼寫,這個很簡單,後面會寫的,只是想說我為什麼要用.
泛型接口的意圖是什麼?請看如下的問題:
Java代碼
abstract class BaseBean{
//略
}
Interface IA{
public BaseBean doSomething();
}
下面我們繼承這個BaseBean
Java代碼
class ChildBean extends BaseBean{
}
接下來實現接口
Java代碼
class IAImpl implements IA{
public BaseBean doSomething(){
return new ChildBean();
}
}
好了這是慣常的寫法,但是同學們有沒有發現一個問題當你返回得到BaseBean的時候其實你需要的是他的實例而不是這個真實的Bean,而當你強轉時又需要注意兩點: NullPoint 和 類型是否對,這個很麻煩,因為調用者完全不知道調用什麼.那麼我們來描述我們需要什麼:
我們需要IA的doSomething返回的是一個對象這個對象extends於BaseBean
那麼接下來我們就用泛型接口吧:
Java代碼
Interface IAT extends BaseBean{
public T doSomething();
}
class IAImpl implements IAChildBean{
public ChildBean doSomething(){
return new ChildBean();
}
}
這樣當你調用這個實現的時候就能明確地得到返回的對象類型,清楚明了,這就是泛型接口的使用.其實我們平時一直在用的 Iterable就是這玩意大家可以去看下. 回家準備讀下java編程思想中的相關段落.
總結今天收穫很大,這裡要感謝下靈芝同學給我的幫助,是她告訴了我,我所想要的東西叫泛型接口,感謝…
下次等我把泛型都再重新回爐下,再來把泛型的其他東西講來聽聽…
java 泛型接口
泛型的意思就是可以被當做多種類型。
先說class InterImpl implements InterString{。。。}
這個類已經限定了,它只能處理InterString這種情況,因為你已經明確化類型了。
你也可以這樣寫class InterImplString implements InterString {。。。},但是不好。
class InterImpl2Q implements InterQ{…}
這個就挺好了,其中的Q可以是String,也可以是Integer等。第一個Q存在的原因是他也是泛型類,而這個Q所代表的跟他實現的Inter的泛型類型是相同的。而類中的Q是它所處理的類型。
java泛型可以派生子類實例嗎
完全可以 ,泛型只是在限定類的類型,使得實例遵守 泛型類型;就是類型檢查更嚴格了
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/187483.html