KomepiutaPolokalame

Java Generics: faamatalaga ma metotia

E amata i le faaali mai o le ua faatino gagana Java a le tele o le suiga, lea e mautinoa lava aumaia taimi lelei i lona functionality. O se tasi o nei suiga taua o loo i le faatomuaga o Java lautele po o le faalauaitele. O lenei functionality le gata faia le gagana sili fetuutuunai ma vavai, ae faapea foi le tele o saogalemu i le tulaga o le aumaia o le ituaiga faamatalaga.

O le mea moni e faapea, ao lumanai ai le faatomuaga o generics i Java code lautele e mafai ona faia, e le gata i le tulaga o Object faasinomaga ituaiga. O na sootaga e mafai ona tofia so o se mea. Ina ua maea uma, vasega i Java o ni suli atoatoa vasega Object. Peitai, o lenei faiga o se puna malosi i le tele o mea sese e faatatau i ituaiga saogalemu i le liua manino o se mea faitino mai le Object i le ituaiga sini. Pe a faaaogaina faalauaitele o loo faatinoina uma tae anufe implicitly ma otometi, e faaitiitia e oo lava i le agavaa mo le tulaga sese.

Java Generics: faamatalaga ma faataitaiga

Seʻi o tatou iloiloina se faataitaiga faigofie o le talosaga o generalization i vasega masani i le fuainumera o loo i lalo. Ma faagasolo i se suesuega auiliili o subtleties uma ma eseese o Java lautele.

Uaʻi atu i le ala lea e le tautinoga le vasega e tupu pea. Ina ua tuanai le igoa vasega, puipui tatala tulimanu, lea e faailoa mai e le tusi T. O se ituaiga o filler, o loo i le faagasologa o le foafoaina o le a suia se faataitaiga o lenei vasega e se ituaiga faapitoa. E foliga mai e faapea: pea obj = pea fou (). E tatau ona matauina ai nai lo le T mafai ona faamaoti so o se tusi, ae, e pei o se tulafono faafoe, faaaoga T, V po E.

Manatua: e amata i le lomiga lona valu o le Java, e faamaotiina ai le sini ituaiga pe a folafola faasinomaga puipui laau i le constructor mafai ona tuua avanoa. Lea faataitaiga e mafai ona rewritten pei luga: pea obj = pea fou <> ().

Ina ua faaalia manino a le vasega i se auala, lea i lona tino ae le o le ituaiga o fanua faapitoa, sootaga, o mea faitino toe foi i le auala e mafai ona e faaaogaina lena tusi. Talu T pe fatuina ua suia le mea vasega e se ituaiga faapitoa, fanua muamua ma le lua i totonu o lenei tulaga o le a avea o le integer ituaiga.

Le mulimuli i le alagatatau o le finauga ma firstItem secondItem, o lo o taua i le constructor talafeagai e tatau foi ona o ituaiga integer po subclass. Afai e te taumafai e auina atu a ituaiga o faamatalaga e ese mai le mea na faamaoti mai pe a faia o se mea, o le a lē tuu atu i le tuufaatasia o lenei mea sese. O lea la, o le finauga constructor pe se a mea e faapea: pea obj = pea fou <> (fou integer (1), e fou integer (2)). Le lava lea e tasi e faatatau i le finauga ma metotia setFirst setSecond. Ma e pei ona ua e atonu mate, metotia getFirst getSecond ma o le a toe foi a taua o ituaiga integer.

Generalized ma ni tapulaa ituaiga vasega

I vasega generalized mafai foi ona tautino tapulaa tele o le ituaiga o lo o faatulagaina i puipui laau ma se koma. Redesigned e se tulaga ua tuuina atu o loo i lalo pea o le vasega.

E pei ona e vaai i ai, pe ae faia se faataitaiga o lenei vasega i puipui laau e tatau ona faailoa mai le numera lava lea e tasi o ituaiga o le faataamilosaga. Afai e te masani i lenei ituaiga o fausaga o faamatalaga e pei o se faafanua, e mafai ona e iloa e faaaoga e tutusa lelei lava mataupu faavae. O loo i ai, o le finauga muamua faamaoti mai e le ituaiga o autu, ma le lona lua - o le ituaiga o taua. E tatau ona matauina e le ituaiga o le faaooina atu pe se mafai fesiliaʻi finauga mea. Mo se faataitaiga, o le mulimuli i le ta se faataitaiga vasega pea e matua saʻo: pea obj.

O nisi vala o faalauaitele

I luma o le a atili, e tatau ona matauina e le fatu le tuufaatasia Java lomiga eseese o le ulugalii o le vasega. O le mea moni, i le faagasologa o le tuufaatasia o se ituaiga generalized faamatalaga uma ua aveesea. Nai lo lena, e aumaia le ituaiga talafeagai, fatuina o se lomiga faapitoa o le vasega i paga. Ae peitai, i le polokalama o loo i ai pea na o se vaega lautele o le vasega. O lenei faagasologa ua taʻua i ituaiga faamamaina lautele Java.

Manatua se vaega taua. Sootaga e eseese lomiga o le vasega lautele java lava lea e tasi e le mafai ona faasino atu i se tasi ma le faamoemoega e tasi. O lena mea, manatu tatou sootaga lua: pea obj1 ma pea obj2. O lea la, i le laina obj1 = obj2 se mea sese. E ui lava e lua fesuiaiga o ni ituaiga pea , o le mea lea latou te faasino, e eseese. o se faataitaiga sili lea o le ituaiga o le saogalemu i Java lautele.

Tapulaa i le vasega lautele

E taua tele le iloa o le faalauaitele e mafai ona faatatau na o le mau ituaiga, o e oo tapulaa finauga java vasega lautele e tatau ona avea o se ituaiga o le vasega. O nei ituaiga faigofie, e pei o, f.t.t., lua po o le umi, e le mafai ona faaliliuina. I se isi faaupuga, o le laina lenei tautinoga vasega i paga ua le faatagaina: pea obj. Peitai, o lenei tapulaa e le o se faafitauli matuia, e pei o loo i ai se vasega afifi Java tutusa mo ituaiga anamua taitasi. Matua tautala, pe afai o le vasega i paga e te manao e encapsulate se integer ma avtoupakovka taua Boolean faia mea uma mo oe: pea obj = pea fou <> (25, moni).

O se isi tapulaa matuia o le le mafai ona faia se faataitaiga o le ituaiga parameter. Mo se faataitaiga, o le a mafua ai laina nei a sese tuufaatasiga: T muamua = T fou (). ua manino lenei, aua e te le iloa muamua pe mavae se finauga a le vasega atoa po o faamatalaga otooto, po o le Ofisa. E faapena foi mo le foafoaina o arrays.

ituaiga faatapulaaina

Le tele o taimi o loo i ai tulaga pe a talafeagai ai ina ia faaitiitia le lisi o ituaiga e mafai ona pasia e avea o se finauga i java vasega lautele. Ia tatou manatu i lo tatou pea le vasega tatou te mananao e encapsulate na o le tulaga faatauaina o fuainumera mo nisi gaoioiga faamatematika i latou. Ina ia faia lenei mea e tatau ona tatou faauigaina o le tapulaa i luga o le ituaiga parameter. E iloa ai e ala i se faasalalauga superclass tuufaasolo finauga uma mavae i puipui laau. O le a vaavaai e faapea: vasega pea . I totonu o lenei faiga, e maua e le tuufaatasia o le ae le o le parameter T mafai ona suia po o le Numera o le vasega po o se tasi o ona subclasses.

o se taliaina masani lenei. O faasa e masani ona faaaoga e tuuina atu le tulaga ogatasi tapulaa ituaiga i se tasi ma le vasega lava lea e tasi. Mafaufau i le faataitaiga i le tatou vasega pea: vasega pea . tatou iloa nei o le tuufaatasia e mafai ona soʻona faia le T ituaiga, ma e tatau ona ituaiga V pe ituaiga T po o se tasi o ona subclasses.

Le faatapulaaina o le "pito i lalo" o tonu lava i le auala lava e tasi, ae o le upu faalautele atu i sipelaina le afioga maoae. Ua faavasegaina vasega pea faapea mai e mafai ona suia nai lo le T po o se ArrayList, po o so o se vasega po o le Ofisa e maua e.

metotia Java lautele ma constructors

I Java, faalauaitele e mafai ona faaaogaina e le gata i le vasega, ae faapea foi auala. Mo se faataitaiga, e mafai ona tautino mai ai se metotia lautele i se potuaoga masani.

E pei ona vaaia i le ata i luga, o le auala generalized ta o ni mea mamafa. Lava i luma o le toe foi mai ituaiga o se auala e tuu le puipui laau ma faamaoti mai le faataamilosaga ituaiga i latou.

Afai ua faia faapena foʻi mea uma i le constructor:

Tulimanu puipui i le tulaga lenei tuu i luma o le igoa o le mamanuina, ona ua leai se toe foi taua. O le taunuuga o faasalaga uma e lua polokalame o le a:

integer

mānoa

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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