版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
使用泛型《Java程序設(shè)計》什么是泛型,如何創(chuàng)建泛型?1如何使用泛型?2本講要討論的問題目錄CONCENT什么是面向?qū)ο??泛型又叫“參?shù)化類型”,是在定義類、接口、方法的時候指定某一種特定類型,讓類、接口、方法的使用者來確定具體使用哪一種類型的參數(shù)。通過使用泛型,可以在編寫代碼時將類型作為參數(shù)傳遞,并在編譯時進行類型檢查,從而實現(xiàn)類型安全性和代碼的重用性。什么是泛型?在一個ArrayList集合當(dāng)中存儲信息,情況如下:
Productpro1=newProduct(1,"書籍",12.99);
Employeeemp1=newEmployee("001","王剛","男");
ArrayListlist=newArrayList();
list.add(emp1);
list.add(pro1);
for(Objectemp:list){
//在某處程序可能會報錯,無法確定遍歷的是Product,還是Employee}泛型的定義:行為(方法)特征(屬性)泛型集合在創(chuàng)建集合對象時指定集合中元素的類型,使用“<參數(shù)化類型>”的方式明確集合中元素的類型,通過在編譯時進行類型檢查,可以確保集合中只能存儲指定類型的對象數(shù)。例如:定義一個名為"Employee"的類,該類可以描述員工的屬性和行為。屬性是id、姓名、性別等;方法是工作等。
employeeid、姓名、性別等工作等Product
pro1
=
new
Product(1,"書籍",12.99);Employeeemp1
=
new
Employee("001","王剛","男");ArrayList<Employee>
list
=
new
ArrayList<Employee>();list.add(emp1);list.add(pro1);//此處,程序即會報錯,無法放入不同類型的數(shù)據(jù)將前面出現(xiàn)錯誤的例子改成使用泛型:程序會在編譯時進行檢查,發(fā)現(xiàn)不同類型的對象“pro1”,然后發(fā)出錯誤提示。泛型的定義:ArrayList<T>list=newArrayList<T>();ArrayList<?>list=newArrayList<>();1.聲明一個接受任何類型的泛型集合:泛型集合的聲明:集合名稱<T>對象名=new集合名稱<T>();語法
ArrayList<?extendsNumber>list=newArrayList<>();2.聲明一個接受某個類型及其子類的泛型集合:ArrayList<?superInteger>list=newArrayList<>();3.聲明一個接受某個類型及其父類的泛型集合:
“雇員”類特征(屬性)ID姓名性別行為(方法)工作下面以兩個案例講解泛型在List集合當(dāng)中的應(yīng)用:泛型的應(yīng)用:實例化
publicclassEmployee{
privateStringid;//員工編號
privateStringname;//員工姓名
privateStringgender;//員工性別
publicEmployee(Stringid,Stringname,Stringgender){
this.id=id;
this.name=name;
this.gender=gender;}
publicStringgetId(){
returnid;}
publicStringgetName(){
return
name;}
publicStringgetGender(){
return
gender;}
publicvoiddoWork(){//員工工作的方法System.out.println("員工"+name+"正在工作...");}}實例化
importjava.util.ArrayList;importjava.util.List;publicclassTestEmployee{
publicstaticvoidmain(String[]args){
//聲明一個泛型集合 List<Employee>empList=newArrayList<>();
//添加員工 Employeeemployee1=newEmployee("001","王剛","男"); Employeeemployee2=new
Employee("002","李欣","女"); Employeeemployee3=newEmployee("003","張小飛","男");
//添加員工 empList.add(employee1); empList.add(employee2); empList.add(employee3);
//輸出員工人數(shù) System.out.println("當(dāng)前員工人數(shù):"+empList.size());
for(Employeeemp:empList){ System.out.println("編號:"+emp.getId()); System.out.println("姓名:"+emp.getName()); System.out.println("性別:"+e
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年韶關(guān)市職工大學(xué)輔導(dǎo)員考試筆試題庫附答案
- 2025年三門峽社會管理職業(yè)學(xué)院輔導(dǎo)員考試參考題庫附答案
- 2025呼倫貝爾市總工會招聘24名社會化工會工作者和工會專職集體協(xié)商指導(dǎo)員備考題庫附答案
- 家用音頻產(chǎn)品維修工安全宣貫評優(yōu)考核試卷含答案
- 玻璃釉印工崗前實踐理論考核試卷含答案
- 圓機操作工QC管理測試考核試卷含答案
- 蒙藥材種植員崗前QC管理考核試卷含答案
- 硬質(zhì)合金燒結(jié)工操作規(guī)程知識考核試卷含答案
- 2024年海南開放大學(xué)輔導(dǎo)員考試筆試題庫附答案
- 2025年醫(yī)療廢物處理與處置手冊
- 文化藝術(shù)中心管理運營方案
- 肩袖損傷臨床診療指南
- 2026年管線鋼市場調(diào)研報告
- 2025年江蘇省公務(wù)員面試模擬題及答案
- 2025中國家庭品牌消費趨勢報告-OTC藥品篇-
- 機器人學(xué):機構(gòu)、運動學(xué)及動力學(xué) 課件全套 第1-8章 緒論-機器人綜合設(shè)計
- JJG 694-2025原子吸收分光光度計檢定規(guī)程
- 廣東省2025屆湛江市高三下學(xué)期第一次模擬考試-政治試題(含答案)
- 2025年3月29日全國事業(yè)單位事業(yè)編聯(lián)考A類《職測》真題及答案
- 梯子使用安全操作規(guī)程
- 民航保健與衛(wèi)生
評論
0/150
提交評論