Kọmputa, Siseto
Java Generics: apejuwe ati awọn ọna
Bere pẹlu hihan Java ede ti koja kan pupo ti ayipada, eyi ti o laiseaniani mú rere asiko ninu awọn oniwe-iṣẹ. Ọkan ninu awọn wọnyi significant ayipada ni awọn ifihan ti Java Generic tabi generalizations. Yi iṣẹ-nikan ko ṣe awọn ede diẹ rọ ati ki o wapọ, sugbon tun Elo ailewu ni awọn ofin ti mú awọn data omiran.
Awọn o daju ni wipe saju si awọn ifihan ti generics ni Java jeneriki koodu le wa ni da, ko nikan ni awọn ofin ti iru itọkasi Nkan. Iru ìjápọ le wa ni sọtọ eyikeyi ohun. Lẹhin ti gbogbo, kilaasi ni Java ni o wa ßinßin Nkan kilasi ajogun. Sibẹsibẹ, yi ona jẹ ti o pọju orisun ti ọpọlọpọ awọn aṣiṣe jẹmọ si aabo orisi ni awọn kedere iyipada ti ohun lati Nkan si awọn afojusun iru. Nigba lilo generalizations gbogbo simẹnti wa ni ošišẹ ti implicitly ati ki o laifọwọyi, yiyo ani awọn pọju fun awọn aṣiṣe.
Java Generics: apejuwe ati apẹẹrẹ
Jẹ ki a ro kan awọn apẹẹrẹ ti awọn ohun elo ti akopọ si deede kilaasi ni awọn nọmba rẹ ni isalẹ. Ati ki o si tẹsiwaju si kan alaye ibewo ti gbogbo awọn subtleties ati nuances ti Java Generic.
San ifojusi si awọn ọna ninu eyi ti awọn kilasi asọ waye Bata. Lẹsẹkẹsẹ lẹhin awọn kilasi orukọ, ìmọ igun biraketi, eyi ti itọkasi awọn lẹta T. O ti wa ni a irú ti kikun, ti o jẹ ninu awọn ilana ti ṣiṣẹda ohun apeere ti yi kilasi yoo wa ni rọpo nipasẹ kan pato iru. O wulẹ bi wọnyi: Bata
Akiyesi: ti o bere pẹlu kẹjọ version of awọn Java, seto awọn afojusun iru nigbati siso itọkasi igun biraketi ninu awọn Constructor le wa ni osi sofo. Ki apẹẹrẹ le ti wa ni se atunko bi loke: Bata
Nigba ti a kilasi ti wa ni polongo ni iru kan ona, ki o si ni ara rẹ dipo ti kan pato orisi ti oko, ìjápọ, ohun pada nipa awọn ọna ti o le lo ti lẹta. Niwon T nigbati ṣiṣẹda awọn kilasi ohun ti wa ni rọpo nipasẹ kan pato iru, akọkọ ati keji aaye ninu apere yi ni yio je ti awọn iru odidi.
Awọn wọnyi ni kannaa ti awọn ariyanjiyan ati firstItem secondItem, tọka si awọn ti o yẹ Constructor gbọdọ tun jẹ ti iru odidi tabi subclass. Ti o ba gbiyanju lati atagba a data iru ti o yatọ si lati ohun ti a ti pàtó kan nigbati ṣiṣẹda ohun, awọn alakojo yoo ko jẹ ki yi ìfípáda. Bayi, awọn ariyanjiyan Constructor nigba ti ohun ti yoo jẹ bi wọnyi: Bata
Ṣakopọ pẹlu orisirisi sile kilasi orisi
Ni ti ṣakopọ kilasi tun le sọ ọpọ sile ti awọn iru ti o ti wa ṣeto ni igun biraketi pẹlu kan koma. Redesigned nipa a irú Bata kilasi ti gbekalẹ ni isalẹ.
Bi o ti le ri, nigbati o ba ṣẹda ohun apeere ti yi kilasi ni igun biraketi yẹ ki o tọkasi awọn nọmba kanna ti orisi bi sile. Ti o ba wa ni faramọ pẹlu yi iru data be bi a Map, o le ri pe o nlo gangan kanna opo. Nibẹ, ni igba akọkọ ti ariyanjiyan so awọn iru ti bọtini, ati awọn keji - awọn iru ti iye. O yẹ ki o wa woye wipe awọn orisi ti zqwq nigba ti ohun ariyanjiyan le ni lqkan. Fun apẹẹrẹ, awọn wọnyi ad Bata kilasi apeere jẹ Egba ti o tọ: Bata
Diẹ ninu awọn ẹya ara ẹrọ ti generalizations
Ki o ti lọ siwaju, o yẹ ki o wa woye wipe Java alakojo ko ni ṣẹda o yatọ si awọn ẹya ti awọn kilasi Bata. Ni pato, ni awọn ilana ti compiling a ti ṣakopọ type gbogbo alaye ti wa ni paarẹ. Dipo, o si mu awọn yẹ orisi, ṣiṣẹda kan pataki ti ikede ti Bata kilasi. Sugbon, ni awọn eto nibẹ ni ṣi nikan a jeneriki ti ikede ti awọn kilasi. Ilana yi ni a npe ni ni Java Generic ninu iru.
Akiyesi ohun pataki ojuami. Ìjápọ si yatọ si awọn ẹya ti awọn kanna Java jeneriki kilasi ko le ntoka si ọkan ati awọn kanna ohun. Ti o ni, Sawon a ni meji ìjápọ: Bata
Awọn ihamọ on jeneriki kilasi
O ṣe pataki lati mo wipe generalizations le wa ni gbẹyin nikan lati juwe orisi, ti o ni si ṣe sile jeneriki kilasi Java ariyanjiyan gbọdọ jẹ a kilasi iru. Awọn wọnyi ni o rọrun oniru, bi, e.g., ė tabi gun, ko le wa ni ti o ti gbe. Ni gbolohun miran, awọn wọnyi ila Bata kilasi ìkéde ko ba gba laaye: Bata
Miran ti pataki aropin ni awọn ailagbara lati ṣẹda ohun apeere ti awọn paramita iru. Fun apẹẹrẹ, awọn wọnyi ila yoo fa a akopo aṣiṣe: T akọkọ = titun T (). Eleyi jẹ kedere, nitori ti o ko ba mo ilosiwaju boya ni awa koja kan ni kikun kilasi tabi áljẹbrà, tabi paapa ni wiwo. Kanna n lọ fun ṣiṣẹda imole.
lopin orisi
Oyimbo igba nibẹ ni o wa ipo nigba ti o jẹ pataki lati se idinwo awọn akojọ ti awọn orisi ti o le wa ni koja bi ohun ariyanjiyan to Java jeneriki kilasi. Jẹ ki a ro pe ninu wa kilasi Bata a fẹ lati encapsulate nikan ni ìtúwò iye fun siwaju mathematiki mosi lori wọn. Lati ṣe eyi ti a nilo lati setumo awọn oke ni iye ti awọn paramita iru. O ti wa ni mo daju nipa ọna ti a superclass ìpolówó jogun gbogbo awọn ariyanjiyan koja ni igun biraketi. O yoo wo bi wọnyi: kilasi Bata
Eleyi jẹ kan wọpọ gbigba. Iru awọn ihamọ ti wa ni igba ti a lo lati pese ibamu iru sile ninu ọkan ati awọn kanna kilasi. Ro awọn apẹẹrẹ ninu wa kilasi Bata: kilasi Bata
Diwọn ohun ti "isalẹ" ni gangan ni ọna kanna, sugbon dipo ti awọn ọrọ pan to sipeli ọrọ Super. O ti wa ni classified kilasi Bata
Generic Java ọna ati constructors
Ni Java, generalizations le wa ni loo ko nikan lati awọn kilasi, sugbon o tun ọna. Fun apẹẹrẹ, a jeneriki ọna le ti wa ni so ni a deede ìyàrá ìkẹẹkọ.
Bi ti ri ninu awọn nọmba loke, awọn ipolongo ti ṣakopọ ọna ti o jẹ ko si nla ti yio se. To ṣaaju ki awọn pada iru ti a ọna lati fi awọn igun awọn akọmọ o si pato awọn iru sile ninu wọn.
Ti o ba ti ohun gbogbo ti wa ni ṣe bakanna si Constructor:
Igun biraketi ninu apere yi fi ṣaaju ki o to awọn orukọ ninu awọn onise, nitori ti o ni o ni ko pada iye. Awọn esi ti awọn mejeeji eto yoo wa ni:
odidi
okun
Similar articles
Trending Now