TölvurForritun

Java samheitalyfjasviði: Lýsing og aðferðir

Byrjar með útliti Java tungumál hefur gengist undir miklar breytingar, sem eflaust fært jákvæð augnablik í virkni þess. Einn af þessum verulegra breytinga er innleiðing Java Generic eða alhæfingum. Þessi virkni ekki bara að gera tungumálið meira sveigjanlegur og fjölhæfur, en einnig mun öruggari hvað varðar uppeldi gagnatög.

Staðreyndin er sú að áður en tilkomu samheitalyfjum í Java almenna númerið gæti verið búin, ekki aðeins með tilliti til tegund hlutsins. Slík tengsl geta verið úthlutað allir mótmæla. Eftir allt saman, flokkar í Java eru óbeinar Object flokks erfingja. Þó þessi aðferð er möguleiki uppspretta af mörgum villum tengjast tegundum öryggi í augljós umbreytingu hlut frá hlutnum til að miða gerð. Þegar þú notar alhæfingar allt afsteypur eru gerðar óbeint og á sjálfvirkan hátt, útrýming jafnvel möguleika á villum.

Java samheitalyfjasviði: lýsing og dæmi

Lítum á einfalt dæmi um beitingu alhæfing að venjulegum bekkjum á myndinni hér fyrir neðan. Og síðan haldið áfram nákvæmri rannsókn á öllum blæbrigði Java Generic.

Borga eftirtekt til the vegur sem flokkur yfirlýsing sér stað Para. Strax eftir bekknum nafn, open angle sviga, sem ætlað stafinn T. Það er nokkurs konar fylliefni, sem er í því ferli að búa til tilvik af þessum flokki verður skipt út ákveðna tegund. Það lítur út eins og hér segir: par obj = nýtt par (). Það skal tekið fram að í stað þess að T er hægt að tilgreina hvaða staf, en að jafnaði nota T, V eða E.

Ath: byrja með áttunda útgáfa af Java, tilgreina miða gerð þegar lýsa tilvísun oddklofa í framkvæmdaaðila getur verið vinstri tómur. Svo dæmi má endurrita sem er hér að ofan: par obj = nýtt par <> ().

Þegar flokkur er lýst á þann hátt, þá í líkama hans stað á tilteknum tegundum sviðum, tengla, hlutum sem skilað er af þeim aðferðum sem þú getur notað þessi bréf. Síðan T þegar búa bekknum mótmæla komi tiltekinni gerð, fyrsti og annar sviðum í þessu tilfelli verður af gerðinni Integer.

Eftir röksemdafærsluna og firstItem secondItem, sem vísað er til viðeigandi framkvæmdaaðila verður einnig að vera af gerðinni Integer eða greinar. Ef þú reynir að senda gögn gerð sem er frábrugðið því sem var valinn þegar hlut, þýðanda mun ekki láta þetta mistök. Þannig smiðsfrumbreytur um leið og hlutur verði sem hér segir: par obj = nýtt par <> (nýr Integer (1), ný Integer (2)). Hið sama gildir um rök og aðferðir setFirst setSecond. Og eins og þú hefur sennilega giska, aðferðir getFirst getSecond og mun skila gildi af taginu Integer.

Almenn með nokkrum þáttum flokki gerðum

Almennum bekkjum er einnig lýst margar breytur af þeirri gerð sem eru sett í horn sviga með kommu. Endurhannað af máli Para flokkur er kynnt hér.

Eins og þú geta sjá, þegar þú býrð til eintak af þessum flokki í horn sviga skal tilgreina sama fjölda af tegundum sem breytur. Ef þú ert kunnuglegur með þessari tegund af gögn uppbygging sem kort er hægt að sjá að það notar sömu aðferð. Þar er fyrsta rifrildi skilgreinir lykilgerð, og annað - tegund gildi. Það skal tekið fram að gerðir send þegar hlut rök kunna að skarast. Til dæmis, er eftirfarandi auglýsing Par flokks dæmi er alveg rétt: par obj.

Sumar aðgerðir alhæfingum

Áður en að fara lengra, það ætti að vera tekið fram að Java þýðandinn ekki búið til mismunandi útgáfur af bekknum Pair. Í staðreynd, í því ferli að setja saman almenn toga upplýsingar er eytt. Þess í stað, þú koma viðeigandi tegundir, skapa sérstaka útgáfu af Pair bekknum. Hins vegar, í áætluninni er enn aðeins almenn útgáfa af bekknum. Þetta ferli er kallað í Java Generic hreinsun tegund.

Athugið mikilvægt atriði. Tenglar á mismunandi útgáfur af sömu Java almenna bekknum geta ekki bent á eitt og sama hlut. Það er ráð fyrir að við höfum tvo tengla: par obj1 og Para obj2. Þar af leiðandi, í samræmi obj1 = obj2 villu. Þótt bæði breytur eru af gerðinni par fá þessir hlutir sem þeir vísa, eru öðruvísi. Þetta er gott dæmi um þær tegundir af öryggi í Java Generic.

Takmarkanir á almennar flokkum

Það er mikilvægt að vita að alhæfingar má aðeins beitt að vísa tegundir, það er að fara breytur almenna flokks Java rök verður að vera flokkur gerð. Þessar einföldu gerðum, svo sem, t.d., tvöfaldur eða löng, ekki hægt að flytja. Með öðrum orðum, the hópur stuðningsmanna lína Pair flokki yfirlýsingin er ekki leyfð: Para obj. Hins vegar er þessi takmörkun er ekki alvarlegt vandamál, sem það er samsvarandi Java umbúðir flokki fyrir hverja frumstæða tegund. Strangt til tekið, ef bekknum Pair þú vilt þjappa heiltala og Boolean gildi avtoupakovka gerir allt fyrir þig: Para obj = nýtt par <> (25, satt).

Önnur alvarleg takmörkun er vanhæfni til að búa til eintak af breytu gerð. Til dæmis er eftirfarandi lína mun valda samantekt villa: T fyrsta = new T (). Þetta er augljóst, því þú veist ekki fyrirfram hvort rök staðist fullt flokk eða abstrakt, eða jafnvel tengi. Hið sama gildir um að búa til fylki.

ákveðnum gerðum

Oft eru aðstæður þegar það er nauðsynlegt til að takmarka lista yfir tegundir sem hægt er að fara framhjá sem rök til Java almenna bekknum. Gerum ráð fyrir að í bekknum par okkar og við viljum að þjappa aðeins tölugildi fyrir frekari stærðfræðilegum aðgerðum á þeim. Til að gera þetta þurfum við að skilgreina efri mörk breytu gerð. Það er ljóst af því að yfirklasa auglýsingum erfðum öll rök framhjá í horn sviga. Það mun líta út eins og hér segir: flokkur Para . Á þennan hátt er, sem þýðandi telur að í stað þess stikinn T getur verið skipt út eða Númer flokki eða einn af undirflokka hennar.

Þetta er algeng móttaka. Slíkar hömlur eru oft notuð til að veita eindrægni gerð breytur í einu og sama flokki. Lítið á dæmi í bekknum par okkar: Class Pair . Hér við segja þýðanda sem gerð T getur verið handahófskennt, og V tegund verður að vera annaðhvort T tegund eða einn af undirflokka hennar.

Takmarka "botn" er nákvæmlega sama hátt, en í stað þess orðs nær að stafa orðið frábær. Það er flokkað flokkur Para segir að í stað þess að T geta verið setnir eða ArrayList eða hvaða flokk eða tengi sem það erfir.

Almenna aðferðir Java og Stigakeppni

Í Java, alhæfingar er hægt að beita ekki aðeins að flokka, heldur einnig aðferðir. Til dæmis, almenn aðferð er hægt að lýst í reglulegum kennslustofu.

Eins og sést á myndinni hér að ofan, auglýsingin almenn aðferð er ekki máli. Nóg áður aftur gerð af aðferð til að setja oddklofa og tilgreina tegund breytur í þeim.

Ef allt er gert á sama hátt til framkvæmdaaðila:

Oddklofa í þessu tilfelli setti fyrir nafni hönnuður, því að hann hefur ekkert skilagildi. Árangurinn af bæði forrit verður:

Integer

string

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 is.delachieve.com. Theme powered by WordPress.