日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Java 泛型中super T和extends T的區(qū)別

經(jīng)常發(fā)現(xiàn)有List< super T>、Set的聲明,是什么意思呢?< super T>表示包括T在內(nèi)的任何T的父類,< extends T>表示包括T在內(nèi)的任何T的子類,下面我們詳細分析一下兩種通配符具體的區(qū)別。

公司主營業(yè)務(wù):網(wǎng)站設(shè)計、網(wǎng)站制作、移動網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。成都創(chuàng)新互聯(lián)公司是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。成都創(chuàng)新互聯(lián)公司推出宜良免費做網(wǎng)站回饋大家。

extends

 
 
  1. List< extends Number> foo3的通配符聲明,意味著以下的賦值是合法的: 
  2.  
  3. // Number "extends" Number (in this context) 
  4.  
  5. List< extends Number> foo3 = new ArrayList< extends Number>(); 
  6.  
  7. // Integer extends Number 
  8.  
  9. List< extends Number> foo3 = new ArrayList< extends Integer>(); 
  10.  
  11. // Double extends Number 
  12.  
  13. List< extends Number> foo3 = new ArrayList< extends Double>(); 
  • 讀取操作通過以上給定的賦值語句,你一定能從foo3列表中讀取到的元素的類型是什么呢?你可以讀取到Number,因為以上的列表要么包含 Number元素,要么包含Number的類元素。你不能保證讀取到Integer,因為foo3可能指向的是List。你 不能保證讀取到Double,因為foo3可能指向的是List

  • 寫入操作過以上給定的賦值語句,你能把一個什么類型的元素合法地插入到foo3中呢?你不能插入一個Integer元素,因為foo3可能指向 List。你不能插入一個Double元素,因為foo3可能指向List。你不能插入一個 Number元素,因為foo3可能指向List。你不能往List< extends T>中插入任何類型的對象,因為你不能保證列表實際指向的類型是什么,你并不能保證列表中實際存儲什么類型的對象。***可以保證的是,你可以從中讀 取到T或者T的子類。

super

現(xiàn)在考慮一下List< super T>。

 
 
  1. List< super Integer> foo3的通配符聲明,意味著以下賦值是合法的: 
  2.  
  3. // Integer is a "superclass" of Integer (in this context) 
  4.  
  5. List< super Integer> foo3 = new ArrayList(); 
  6.  
  7. // Number is a superclass of Integer 
  8.  
  9. List< super Integer> foo3 = new ArrayList(); 
  10.  
  11. // Object is a superclass of Integer 
  12.  
  13. List< super Integer> foo3 = new ArrayList();