搜索
标签云
AI
Android
ArchLinux
Awesome WM
Coding
FLOSS
GitLab
Journal
ML
Mac OS X
NLP
OJ
OO
OpenWrt
Programming Language
PulseAudio
Qt
RQNOJ
Rocket
Rust
SNS
Server
TiddlyWiki
UML
Web Framework
Windows 7
XPS 13 9343
acer 5745g
alsa
audio
bbswitch
bluetooth
ddwrt
dkms
ext4
federated
fonosfera
howto
java
kde
linux
lxc
mount
nwauf
python
ruijie
shell
static website
superblock
usb
windows
winsock
《烏合之衆》
中醫
互聯
互聯網
傳統漢字
刷機
合同異
名
壞塊
學藝不精
安全
己見
心理學
懷
所思
拼音文字
文言
新文化運動
析世
概念
漢字
漢字簡化
漢語文
現代
現代醫學
用戶
異道
發行版
白話
硬盤
科學
簡化字
繁體字
群體心理學
翻譯用語
英語文
華夏
西醫
解题报告
觸摸板
路由器
辯辭
迷信
逸事
隱私
離堅白
分类
声明
鏈。。。
存档
匆匆过客
88527
功能
Java的泛型——坑、優秀與缺陷
最近一直在寫一個自己的Android程序(https://github.com/renyuneyun/Easer),所以Java用得比較多。又由於我懶,所以總喜歡讓編譯器做更多,於是想到用泛型來解決之前存在的Object滿地飛又滿地強制類型轉換的情況。然而這時候卻發現,泛型只能解決其中一部分問題,另一部分問題依然存在。
於是起意記錄一下自己知道的、用過的以及碰到的東西,以期有人能給出更加的解決方案(或是乾脆直接指出我錯了最好。。。這樣解決起來最簡單)。
一般而言,Java的泛型可以讓程序員寫出一些“形式相同,但具體參數類型不同”的代碼。從字面上說,這一機制在許多語言中都有(如C++的模板),但由於各個語言的實現方式和語義取捨不同,導致具體支持的功能千差萬別。
本文主要集中於Java泛型機制中的坑爹之處。爲了介紹坑爹之處,於是也就需要涉及該機制的理解,同時也會簡單涉及其實現部分。當然,其中一些有意義的地方也會順帶提及(在做對比時)。