Accessors thiab Mutators nyob Java- Cas nws xwb?

Accessor & Mutator

Accessor & Mutator

Txheej txheem cej luam: Nyob rau cov tshooj no peb yuav tham txog java accessors. Accessors muaj yeej hauv nws qhov kev siv uas yuav siv los saib xyuas thiab muab teb qhov tseem ceeb. Peb yuav tau sib tham txog cov zoo thiab disadvantages accessors siv nyob rau hauv daim ntawv thov java.








Taw qhia: Accessors hauv java zoo li robust thiab modular. Lub tswvyim yog yooj yim tab sis haib heev rau tej ntaub ntawv kev. Raws li peb paub tias accessors muaj yeej hauv nws qhov kev siv uas yuav siv los saib xyuas thiab hloov teb qhov tseem ceeb. Tib lub sijhawm accessors ntxiv ib txheej nyob saum lub teb qhob thib ob ces nws tseem tau me ntsis nyiaj siv ua haujlwm. Tab sis yuav nkaum yam uantej nws yuav siv cov kawm thiab cov cheebtsam. Li ntawd, qhov yooj yog manifold ntxiv thiab cov qauv siv los kuj ntau. Java accessor nyob hauv ob lub flavors los, setter thiab getter. Tus setter yog siv los teev tus nqi hauv daim teb thiab getter yuav siv tau cov nqi no teb.

Nam lwm tseem ceeb yog cov visibility ntawm accessors. Accessors yuav muaj ntau hom kev visibility raws li tus neeg siv specifier ntxiv rau lawv. Li ntawd, nws kuj ua kom cov ntaub ntawv teev ntau theem ntaub ntawv as per rau qhov yuav tsum tau ua hauv daim ntawv thov. Raws li accessors muaj java yooj yim hauv nws qhov kev siv ces lub cev kom zoo visibility cob ib npaum nkaus uas yuav ua kom tus tsim nyob rau hauv tsab ntawv teev npe ua ib tug lej. Muaj ntau mas plaub seb visibility muaj nyiam pej xeem, kev tiv thaiv, lwm yam, thiab vim thiab lawv muaj ntau lub hom phiaj.

Zoo ntawm accessors: Peb tau qhia txog lub hom phiaj ntawm accessors nyob rau hauv daim ntawv thov java. Tam sim no peb yuav tham txog ntawm cov lus hais txog qhov zoo ntawm accessors.

  • Ib qho taw tes rau: Accessor muab ib qho taw tes rau ib attribute nyob rau hauv daim ntawv thov. Yuav hloov thiab ntsuam xyuas cov cuab yeej ntau nraaj. Los kwv oriented thiab pom, cov ntaub ntawv muab encapsulated.
  • Initialization tub nkees: Tus tub nkees initialization yog lub tswvyim tseem ceeb nyob rau hauv daim ntawv thov java. Lub tswvyim yog thauj cov ntaub ntawv thaum nws muaj xub accessed. Piv li, koj daim ntawv thov yuav tsum khiav, tiam sis koj yuav tsis tau ib qho attribute tus nqi. Nws yuav tsis muab sau rau hauv daim ntawv thov no li populating cov attribute nrho tsis tuav tej ntsiab lus thiab kev pab. Tab sis cov no yuav tuav ruaj ua tus nco. Ces yog peb siv tus txheej txheem tubnkeeg initialization ces peb yeej tsuas loading cov ntaub ntawv thaum nws tseem ua ntej accessed. Thaum uas siv cov accessors, peb yuav tswj tubnkeeg initialization nraaj thiab li ua daim ntawv thov ntau. Yog tus disadvantage, koj daim ntawv thov yuav txoj vim hais tias koj xav tau yog cov attribute tuas tej nqi los sis tsis saib thiab mam li muab nws tus nqi. Initialization tub nkees yog yuav pab tau thaum nws muaj ib co kim muab xam yuav tsum populate cov attribute. Tab sis ho xaiv tas nrho nyob li qhov yuav tsum tau ua hauv daim ntawv thov.
  • Kom tswj: Tus tsim tawm muaj cov kom tswj cov ntaub ntawv muab. Li no txoj kev rau cov pas yuav raug hloov ntawm tej taw tes nyob lub sij hawm. Cov tswj saib yam zoo nyob rau hauv tus qauv siv hauv daim ntawv thov.
  • Kev hloov kho rau cov kev cai ua hauj lwm yooj yim: Yog tias yuav tsum tau hloov cai lag luam ces accessors yuav pab heev. Raws li accessors yuav encapsulating tus pas, kev hloov lossis kev hloov kho kom cov pas tsis muaj tej yam yuav muaj lub zog hu rau. Thiaj li tshiab ua hauj lwm txoj cai yuav muab los siv tau yooj yim uas tshwm rov rau lub Cheebtsam kab. Cov accessors ua ntau saj zawg zog.
  • Txo teebmeem coupling: Nyob rau hauv lub cev yuav siv coupling super kawm thiab sub chav kawm ntawv yog ib qhov teeb meem loj. Yog hais tias koj hloov txhua yam nyob rau hauv cov hoob kawm super ces raug ib feem tso nyiaj ncaj qha rau cov chav kawm ntawv sub. Tab sis, yog hais tias cov chav kawm ntawv sub thiaj tus pas uas siv rau txoj kev accessor ces muaj kev hloov ntawm qhov kev siv ntawm cov hoob kawm super attribute tsis kev cuam tshuam cov chav kawm ntawv sub. Yog li qhov coupling no rau nej ntawd txo thiab li tsub kom cov yooj ntawm cov ntaub ntawv tsim.
  • Encapsulation ntawm validation logic: Qee lub sij hawm peb muaj ib tug yuav tsum tau ua ib co validation ua ntej peb hloov los yog kaw cov ntaub ntawv. Vim li ntawd ib lub chaw zoo rau no validation logic yog hauv txoj kev accessor (hais ntau setter txoj kev). Peb kuj yuav kom zoo dua saib modifier nrog rau txoj kev accessor los muab tej kev txwv mus saib thiab xyuas cov validation logic.
  • Lub npe overcome nkaum qhov teeb meem: Peb muaj ib hom xyaum muab lub zog tib yam li tus muab npe. Ib qho teeb meem uas muaj teeb meem ntau lub npe solves no. Tab sis siv accessors mitigate cov teebmeem no raws li peb tsis muaj cov sij hawm rau hauv tsev, tus pas mus ncaj. Li cas ever yuav lub npe ntawm qhov chaw kuj sib txawv thiab peb tsis tau txhawj txog nws. Tus accessors yuav teev nws yeej.
  • Nkaum undo thiab redo logic: Yog hais tias koj muaj ib tug yuav tsum tau kev hloov cov nqi ntawm tej attribute li thiab ces xa rov qab mus rau tus nqi qub ces siv accessors no yuav pab tau heev.
  • Siv cov getter accessor rau constants: Nyob zoo java programming, yam tsis tu ncua txhais tias zoo li qub kawg nkaus. Thiab ces nws siv nyob rau hauv tsab ntawv teev npe chaws tsis tu ncua. Tiam sis tus disadvantage ntawd yog, yog cov nqi ntawm tej qho chaw hloov ces koj yuav tsum tau hloov hauv txhua kab ever qhov siv. Vim li ntawd cov kev cai yog zoo rau tej chaw qhov muaj yog tsis muaj sij hawm hloov tus nqi yam tsis tu ncua. Tab sis, yog hais tias qhov nqi no yog nyob ntawm ib txhia muab xam los yog lag luam logic ces zoo li yog siv cov getter zoo li qub rau hauv tsev, nws. Yog li thov encapsulation qhov nqi rau txoj kev zoo li qub getter muab kua ntau robust thiab cov qauv siv los kuj ntau modular thiab dim de coupled. Qhov kom zoo dua yog tias koj tsis tau hloov hauv txhua kab, tiam sis tsuas nyob hauv txoj kev getter. Thiab nws kuj siv cov twj paj nruas oriented txoj cai cov lus qho. Li ntawd, qhov no yog ib txoj kev tshiab siv accessors li getter txoj kev uas muab ntau yooj kom muaj tus tshiab. Thiab nyob rau hauv no scenario koj tsis tau hloov rau txoj kev setter.









Nram no yog ib qho piv txwv ntawm java accessors. Tus muaj DVR ib tej setter txoj kev zoo ntawv uas qhov kev siv accessor.

Qhia 1: Cov qauv no uas qhia muaj tej kev siv accessors

[chaws]

/* JavaAccessors.java

* Thsis yog ib qho piv txwv ntawm tej setter thiab ib txoj kev kub ciab me me getter.

*/

/**

* cov npawg Kaushik @author

*/

tsev kawm JavaAccessors {

// Lub zog

Txoj hlua npe;

Chaw nyob txoj hlua;

Hnub nyoog hlua;

Txoj hlua totalstring;

/** Ib qho kev ib lom tshiab ntawm JavaAccessors */

pej JavaAccessors() {

}

/**

* Rov rau tus nqi consolidated hlua.

*/

pej xeem txoj hlua getTitle()

{

Yog hais tias ( lub npe != thov && chaw nyob != thov && hnub nyoog!= thov) {

// Tsim txoj hlua tas nrho

totalstring = “Npe hu ua :”+lub npe ” Yog qhov chaw nyob :”+chaw nyob ” Yog hnub nyoog :”+hnub nyoog;

}

rov qab mus this.totalstring;

}

/**

* Qhov no yog ib cov setter tej

* Teev lub npe, chaw nyob thiab hnub nyoog

* @param lub npe, chaw nyob, hnub nyoog

*

**/

lwm yam khoob lug setTitle(Txoj hlua npe,Chaw nyob txoj hlua,Hnub nyoog hlua)

{

this.name = lub npe;

this.address = chaw nyob;

this.Age = hnub nyoog;

}

pej xeem tsis muaj dabtsis loj zoo li qub(Txoj hlua[]args)

{

// Tsim tshiab lom

JavaAccessors jvaccessor = JavaAccessors tshiab();

// Siv tej setter

jvaccessor.setTitle(“Jhon”,”TEB CHAWS USA”,”32″);

// Tau cov zis consolidated

Kaj newname = jvaccessor.getTitle();

System.out.println(“Txoj hlua tshiab rau tus nqi yog :”+ newname);

}

}

[/chaws]

Thaum twg tsis tau siv accessors: Peb tau qhia txog qhov chaw twg accessors yuav muab los siv. Peb muaj kuj piav ntawd puas muaj tseeb yuav ua raws li cov accessors ua daim ntawv thov dua robust, saj zawg zog thiab maintainable. Ziag no peb yuav tham txog tej chaw uas accessor no tsis yog ib tug zoo haum. Nyob rau hauv tej ntaub ntawv, tso lub sij hawm uas tseem ceeb tshaj plaws thiab muaj pab ntawm accessor yuav ua kom lub sij hawm ntawv qeeb thiab tsis teb. Tiam sis yog tsawg no scenario thiab yog tshwm sim ces peb yuav tsum xav txog tej kev qhia ntawv hais haum. Lwm tus txoj kev uas nws ua tau accessor npaum yog siv tej accessor. Accessor tej yuav yuav sau tseg raws li tus accessor uas ua haujlwm nyob rau ntau yam muab theej ib tug zuj zus. Ces tus kom zoo dua yog tias lub chaw ua hauj lwm puas tau rau ib txhaj koob tshuaj tivthaiv piv mus hu ob peb accessors thiab tau/teeb muab qhov tseem ceeb. Thiab lwm taw tes tseem ceeb heev yog tias cov accessors yog tsis tas yuav tsum tau ua kom pej xeem. Qee lub sij hawm peb kuj ua lwm yam los tiv thaiv yog tias yuav tsum tau.

Nram qab no yog ib co kev cai rau tom qab tias yog ib txoj kev rau cov accessors

  • Yeej yuav ua tiag ceev cov accessors tiv thaiv. Nws yuav tsuas ua rau nws pom nyob rau hauv hoob sub
  • Yog tsis subclass yuav mus saib tau cov pas ces ua ib accessors lwm yam
  • Ib txhia kawm lwm xav nkag pas ces tsuas siv pej xeem

Xaus: Hauv no Tshooj Peb muaj introduces java accesors thiab lawv yuav siv. Peb muaj tseem tham txog robustness thiab yooj java daim ntawv thov thaum accessors. Tab sis tej lub sij hawm no tej zaum yuav muaj nyiaj siv ua haujlwm thaum yam tej txoj kev muab xam thiab daim ntawv thov yuav tsum ceev teb tau. Vim li ntawd peb yuav xaus tias cov accessors yog tus haib feature hauv java tab sis nws yuav pib siv ntawd yuav tau rov ua tib zoo.







Tagged: , ,
============================================= ============================================== Yuav zoo TechAlpine phau ntawv rau Amazon
============================================== ---------------------------------------------------------------- electrician ct chestnutelectric
error

Txaus siab rau qhov blog? Tshaj tawm lus thov :)

Follow by Email
LinkedIn
LinkedIn
Share