Компьютер, Програмчлалын
Java женерик: тодорхойлолт, арга
Java хэлний төрх эхлэн өөрчлөлт, эргэлзээгүй өөрийн чиг үүргийн эерэг мөчүүдийг авчирсан нь маш их хийгдсэн. Эдгээр томоохон өөрчлөлтийн нэг нь Java ерөнхий болон ерөнхийлсөн нэвтрүүлэх юм. Энэ боломж нь зөвхөн хэлний илүү уян хатан, олон талын, бас өгөгдлийн төрлийг авчрах хувьд маш найдвартай хийж чадахгүй.
баримт Java ерөнхий кодыг компанийн ерөнхий танилцуулахаас өмнө нь зөвхөн төрлийн лавлагаа Object хувьд, бий болох гэж байна. Ийм холбоосууд ямар нэг зүйлийг даалгасан болно. Эцсийн эцэст, Java-д анги далд Object анги өв залгамжлагчид юм. Гэсэн хэдий ч энэ арга нь зорилтот төрөл Object-аас объектын илэрхий хөрвүүлэлтийн аюулгүй байдлын төрлийн холбоотой олон алдааны боломжит эх үүсвэр юм. ерөнхийлөн ашиглаж байгаа үед л төрүүлж, алдааг нь ч гэсэн боломж арилгах, далд автоматаар гүйцэтгэдэг.
Java женерик: тайлбар болон жишээ
АНУ-ын доорх зурагт тогтмол ангид тугээмэл хэрэглэх нь энгийн жишээг авч үзье. Тэгээд дараа нь бүх subtleties болон Java ерөнхий ын нарийн ялгааг нарийвчлан шалгалт үргэлжлүүлье.
нь анги мэдэгдэл Pair тохиолддог байдлаар анхаарал хандуулаарай. Нэн даруй анги нэрээр, нээлттэй өнцөг хаалт, захидал төвдөөр заасан Энэ нь тодорхой төрлийн орлуулж болно энэ ангийн төл бий болгох үйл явц юм дүүргэгч нь нэг төрлийн юм. ХОС
Тайлбар: Java найм дахь хувилбар эхлэн байгуулагч лавлах өнцөг хаалт зарласан хоосон орхиж болно үед зорилтот төрөл тодорхойлсон. Дээрх жишээ гэж бичигдэх боломжтой Тэгэхээр: хосын
Анги ийм замаар, дараа нь түүний биед оронд салбар, холбоосууд, та тэр захидал ашиглаж болно аргаар буцаж объектын тодорхой төрлийн зарласан үед. T оноос хойш үүсгэх үед ангийн обьект нь тухайн төрөл, энэ тохиолдолд эхний болон хоёр дахь талбарууд төрөл бүхэл тоо байх болно солигдсон байна.
нэмэлт өгөгдлүүд болон firstItem secondItem нь логик дараа нь бас төрөл бүхэл тоо, эсвэл Ангилал байх ёстой зохих байгуулагч гэж нэрлэдэг. Та объект үүсгэх үед тодорхой ямар ялгаатай юм өгөгдлийн төрлийг дамжуулах оролдвол, хөрвүүлэгч энэ алдааг бүү байх болно. Тиймээс нэмэлт өгөгдлүүд байгуулагч обьект болгон дараах байдлаар олгоно: Pair
хэд хэдэн параметрүүд зэрэг төрлийн ерөнхийлж
ерөнхий ангид нь мөн төрөл нь таслалаар нь өнцөг хаалтанд тогтоосон олон параметрүүдийг зарлаж болно. ХОС анги доор үзүүлсэн байгаа тохиолдолд өөр шинэчлэгдсэн.
Таны харж байгаагаар та өнцөг хаалтад энэ ангийн төл үүсгэх үед параметрийн талаар төрлийн ижил тооны зааж өгөх ёстой. Хэрэв та газрын зураг гэх мэт өгөгдлийн бүтэц нь энэ төрлийн мэддэг бол та яг ижил зарчмыг ашигладаг болохыг харж болно. утгын төрлийг - Тэнд Эхний нэмэлт өгөгдөл нь түлхүүр төрлийг, хоёр дахь тогтооно. Энэ нь дамжуулсан төрлийн объект нэмэлт өгөгдлүүд нь давхцаж болзошгүй үед гэдгийг тэмдэглэх нь зүйтэй. Жишээ нь, дараах зар ХОС зэрэг жишээ нь туйлын зөв юм: ХОС
ерөнхийлсөн зарим онцлог
цаашид явах өмнө Java хөрвүүлэгч анги хос янз бүрийн хувилбаруудыг бий болгох биш гэдгийг тэмдэглэх нь зүйтэй. Ер нь, ерөнхий төрөл бүхий л мэдээллийг цуглуулах явцад устгагдсан байна. Харин үүний оронд та ХОС ангийн тусгай хувилбарыг бий болгох, зохих төрлийн авчирдаг. Гэсэн хэдий ч, хөтөлбөрт тэнд ангийн зөвхөн ерөнхий хувилбар нь одоо ч байна. Энэ үйл явц нь Java ерөнхий цэвэрлэх төрөл гэж нэрлэдэг.
чухал цэг анхаарна уу. Мөн Java ерөнхий ангийн янз бүрийн хувилбаруудад холбоосууд нэг ижил обьект зааж чадахгүй. ХОС
ерөнхий анги хязгаарлалт
Энэ нь зүйлсийг нийтлэг төрлийн лавлагаа зөвхөн хэрэглэж болно гэдгийг мэдэх нь чухал юм гэдгийг параметрүүдийг ерөнхий анги Java аргументыг ангийн төрөл байх ёстой туулах явдал юм. Жишээ нь: гэх мэт Эдгээр энгийн төрөл, хоёр эсвэл урт, шилжүүлж болохгүй. Өөрөөр хэлбэл, дараах мөрийг ХОС анги мэдэгдэл зөвшөөрөгдөөгүй байна: ХОС
Өөр нэг ноцтой хязгаарлалт параметр төрлийн нэг жишээ бий болгох чадваргүй юм. Жишээ нь, дараах мөрийг эмхэтгэл алдаанд хүргэж байна: T анхны = шинэ T (). маргаан бүрэн ангид, эсвэл хийсвэр, эсвэл бүр интерфэйсийг өнгөрч байгаа эсэхийг та урьдчилан мэдэхгүй байна, учир нь энэ нь тодорхой байна. ижил массивууд бий болгох явдаг.
хязгаарлагдмал төрөл
Нэлээд ихэвчлэн ерөнхий анги Java нь аргументээр болно төрлийн жагсаалтыг хязгаарлах шаардлагатай үед тохиолдол байдаг. бидний анги хосын бид тэдэн дээр цаашид математикийн үйл ажиллагаа нь зөвхөн тоон утгуудыг хайрцаглах хүсч байна гэж үзье. Үүнийг хийхийн тулд бид параметр төрлийн дээд хязгаарыг тодорхойлох хэрэгтэй. Энэ нь өнцөг хаалтанд онд батлагдсан бүх аргумент өвлөн нь өвөг зар аргаар ойлгосон байна. зэрэг ХОС
Энэ бол нийтлэг хүлээн авах юм. Ийм хязгаарлалт нь ихэвчлэн нэг, нэг ангид нийцтэй төрлийн параметрүүдийг хангахын тулд ашиглаж байна. Манай анги хосын жишээг авч үзье: анги ХОС
"Доод" хязгаарлах яг ижил арга зам юм, харин үгийг үг супер ид шид л байдаг. Энэ нь ангилна зэрэг ХОС
Generic Java арга байгуулагч
Java онд зүйлсийг нийтлэг нь зөвхөн ангийн бас аргуудыг хэрэглэж болох боловч. Жишээ нь, ерөнхий арга нь тогтмол ангид зарлаж болно.
Дээрх зургаас харахад, зар сурталчилгааны ерөнхий арга нь ямар ч том наймаа юм. аргын буцах төрөл өнцөг хаалт тавьж, тэдний дотор төрөл параметрүүдийг зааж өмнө хангалттай.
бүх зүйл байгуулагч нь адил хийж байгаа бол:
Энэ тохиолдолд өнцөг хаалт, дизайнер нэрээр өмнө нь тавьсан тэр ямар ч хариулт утга учир. аль аль нь хөтөлбөрийн үр дүн байх болно:
бүхэл тоо
String
Similar articles
Trending Now