JavaRush /Java Blog /Random-TK /Üýtgedijiler ýa-da Java dünýäsinde jadylary nädip taşlama...
Petr Gorskin
Dereje
Москва

Üýtgedijiler ýa-da Java dünýäsinde jadylary nädip taşlamaly

Toparda çap edildi
Galaktiki günüňiz haýyrly bolsun, ýoldaşlar! Bu meniň ilkinji planetalarara golýazmam, inerener bolanym üçin käbir düşünjeleri düşündirmek daşarky dilde edilip bilner.
Java dünýäsinde üýtgeýjiler ýa-da jadylary nädip taşlamaly - 1
Giriş Meniň pikirimçe, Java gapylary (bukjasy) bolan tükeniksiz koridora meňzeýär. Bu gapylaryň hersiniň aňyrsynda boş ýer we faýl şkafy bar, onda obýektleri döretmek üçin görkezmeler (synplar) bilen jadyly aýlawly dag saklanýar. Her aýlawda synpyň özünde ýa-da onuň esasynda ýygnanan obýektleriň (üýtgeýänleriň) we ukyplaryň (usullaryň) toplumy beýan edilýär. Bu etapda, özümizi jadygöýler hökmünde göz öňüne getireliň we düýbünden täze görkezme (synp) döretmäge synanyşalyň. Şeýlelik bilen: Üýtgedijiler ýa-da Java dünýäsinde jadylary nädip taşlamaly - 2Geliň, paýhasyň elikirini içeliň (esaslary öwreniň) we görkezmeleri ýazyp başlalyň. Giriş we girip bolmaýan üýtgedijiler Geliň, onuň esasynda döredilen islendik görkezmäniň we obýektiň, şeýle hem häsiýetleriniň we başarnyklarynyň başda jadyly jadylanjakdygyny göz öňüne getireliň. olara belli bir üýtgeýjiler toplumy berler. Mümkin bolan jadylar barada gollanma döretmäge synanyşalyň.
  1. Synpyň, obýektiň ýa-da meýdanyň elýeterliligini suratlandyrýan giriş modifikatory talap edilýär: ýok mahaly JVM (bu ähliumumy jadylylygyň çeşmesi) awtomatiki usulda paket üçin deslapky kesgitleýjini belleýär.

    Ikinji üýtgeýjiden başlap, hökmany däl we biri-biri bilen gapma-garşy bolup bilýän (ýöne ilki bilen ilki zatlar) girip bilmeýän üýtgeýjiler bar.

  2. Statik üýtgediji synpyň, obýektiň ýa-da meýdanyň statikdigini görkezýär. Emma bu näme many berýär? Esasan meýdanlarda synap göreris.

    Statik üýtgeýjilere synp üýtgeýjileri diýilýär we şol synpyň ähli ýagdaýlaryna mahsus. Statik usullary yglan edilen obýekti döretmezden çagyryp bolar. Statik synplar bir synpy başga bir topara höwürtgede ulanylýar we içki synp bilen daşarky synpyň arasyndaky täsir prinsipi usullara meňzeýär (bu aýratyn pikir alyşmak üçin mowzuk). Şeýle hem obýektiň içinde aýratyn blok hökmünde ulanylyp bilner.

  3. Jemleýji üýtgediji üýtgeýjä hemişelikdigini täsirli görkezýär. Usullar üçin - miras döwründe olary ýok edip bolmaýar, ýöne sapaklar üçin bu miras bolup bilmejekdigini görkezýär (üýtgewsiz).

    Statik we ahyrky üýtgedijiler synplara, obýektlere we meýdanlara degişlidir. Şeýle-de bolsa, diňe käbirlerine degişli üýtgeýjiler bar (ýa-da olaryň bir bölegi, sebäbi üýtgeýän hem, usul hem bir meýdan, ýöne üýtgedijileriň hemmesi ikisine-de degişli däl). Analogiýa çyzsak, tizlik üçin diňe aýakgaplar we ellikler jadylanyp bilner (has çalt hereket etmek üçin), ýöne tizlik üçin şlýapa çekmek manysyz (we alhliumumy Gözegçilik Geňeşi (düzüjisi) muňa rugsat bermez).

  4. Abstrakt üýtgediji diňe usullara we synplara degişlidir . Abstrakt usul, durmuşa geçirmezden usuldyr.

    Bir synp abstrakt hökmünde bellenen bolsa, onda abstrakt usullary öz içine alýar ýa-da şol synpyň mysallarynyň döremeginiň öňüni almak üçin edilýär. Analogiýa çyzsak, görkezmeleriň ortasynda “Obýektiň reňklenmegi” sözbaşysyny görüp bilersiňiz, ondan soň düşündiriş ýok. Bular. bu görkezmäni ulanyp, bir obýekt döredip bilersiňiz we ony reňkläp bilersiňiz, ýöne bu ýörite görkezme nädip (bu obýektiň esasynda gyzyl obýekt döretmek we reňklemegi suratlandyrmak üçin öz görkezmeleriňizi ýazyň) diýmeýär.

Köp sapakly gurşawda işläniňizde ýörite üýtgedijiler ulanylyp bilner:
  1. Sinhronlaşdyrylan modifikator diňe usullar üçin ulanylýar. Onuň bolmagy, bir gezekde diňe bir sapagyň ýerine ýetirip biljekdigini görkezýär. Şeýle hem bir obýektiň içinde (sinhronizasiýa obýektini görkezmek) aýratyn kod bloky hökmünde ulanylyp bilner.

  2. Üýtgäp durýan üýtgediji - diňe üýtgeýänler üçin . Bir wagtyň özünde birnäçe sapak bilen ulanyp boljak üýtgeýänler üçin ulanmak maslahat berilýär. Şeýle üýtgediji bilen üýtgeýji, her gezek üýtgän mahaly prosessor keşinden esasy ýada derrew göçürilýär we parallel sapaklaryň iň soňky bahasyny almaga mümkinçilik berýär.

    Üýtgeýjiniň diňe bir sapak üýtgeýjä ýazyp bilýän, galanlary diňe ondan okap bilýän ýagdaýlarynda üýtgäp biljekdigini bellemelidiris. Beýleki ýagdaýlar üçin, üýtgeýän üýtgeýjä ýazýan usullara sinhronlaşdyrylan modifikatory goşmak has gowudyr.

  3. Wagtlaýyn üýtgediji - diňe üýtgeýänler üçin . Bu üýtgediji, obýekti seriýalaşdyranda geçmeli üýtgeýänleri belleýär (bu şeýle akylly proses, esasanam bu hakda özüňiz okap bilersiňiz ...) *

    * - Bu makalany 17-nji derejede ýazdym we şoňa çenli seriallaşdyrma prosesi beýan edilmedi, şonuň üçin göçürmegiň ýerine, zerur bolsa özüňiz öwrenmegiňizi maslahat berýärin.

Gapma-garşy üýtgediji jübütler Üýtgeýjileriň dürli synplara, obýektlere we meýdanlara ulanylmagyndan başga-da gapma-garşy jübütler düşünjesi hem bar. Kaskany güýç bilen jadylamak ony agyrlaşdyrýar we şol bir wagtyň özünde ýeňil bolmagy üçin jadylamak isleýärsiňiz diýeliň. Biri beýlekisi bilen gabat gelenok.
  1. Jemleýji we üýtgewsiz - üýtgeýjiler barada aýdylanda, şol bir wagtyň özünde gutarnykly (hemişelik) we birnäçe sapaklaryň ony üýtgetmek ukybynyň bardygyny aýdyp bilmeris ... Galyberse-de, ol hemişelik we islendik pursatda bir sapak ony okap biler , ýöne ýekeje sapak hem üýtgemez (Univershliumumy Gözegçilik Geňeşi muňa rugsat bermez).
  2. Jemleýji we abstrakt - synplar we usullar abstrakt bolup bilmez (bu köplenç durmuşa geçirmek üçin olary düşündirmegiň zerurlygyny aňladýar) we ahyrky, ýagny. üýtgewsiz. Görnüşi ýaly, görkezmelerde islendik materialdan (abstrakt bölekden) oňat çydamly kaskany nädip döretmelidigi aýdylýar, ýöne munuň üçin deşik bolmaly däldir (iň soňky hökmany bölegi üýtgedip bolmaz).
  3. Abstrakt we statik - Abstrakt usul bir wagtyň özünde statik ýa-da sinhron bolup bilmez. Statik abstrakt usulyň manysy ýok, sebäbi ol diňe bir zat etmeýär, eýsem tutuş bir klasa degişlidir - netijesi peýdasyz zat.
  4. Abstrakt we sinhronlaşdyrylan - işi hiç zat etmeýän usul bilen sinhronlamagyň manysy näme?
Jemläp aýtsak , üýtgedijileriň beýany gutardy, ähli gapma-garşylyklar çözüldi we indi netijäni aldaw sahypasy - jadylaýyş diagrammasy bilen birleşdirip bilersiňiz: Java dünýäsinde üýtgeýjiler ýa-da jadylary nädip taşlamaly - 3Sözümiň ahyrynda, bu makalany ýazmak islegimiň amala aşandygyny aýtmak isleýärin üýtgedijileri öwrenmek üçin. Tejribäniň üstünlikli ýa-da ýokdugyny kesgitlemek size bagly. Ony gowulaşdyrmak / düzetmek baradaky teklipleriňize garaşýaryn we, belki, bilelikde başlaýan java oýunçylary üçin gaty peýdaly gollanma ederis.
Teswirler
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION