ComputerZokuhlela

Java: ngaphandle kunye nokuphathwa kwabo

Nayiphi program iya kusebenza stably kuphela xa ikhowudi yemvelaphi sele olulungiswe, yaye akukho iimeko ezinokubangela iimeko ezingalindelekanga. Inkqubo zibambe iintsilelo kusenzeka olwenziwe eqongeni kweenkqubo. Ukuze benze oku, umphuhlisi sithabathela ingqalelo zonke iziphumo ezilindelekileyo kwaye lizama ukunciphisa isiphumo yesiphoso ukuze ayenzekanga angqamane kwale program, okanye ekhokelela ukuwa kwayo.

Ezinokufuna Ngaphandle yokuphatha

E Java, umnyinyiva ezinokubangelwa ngumsebenzisi igalelo ezingachanekanga, akukho mfuneko yokuba ngumthombo okanye inkqubo womnatha qhawulo ngequbuliso. Ngokuba ukusetyenziswa ukhululekile wadala yi umphuhlisi isicelo, kufuneka ukulawula xa kukuvela kweemeko likaxakeka. Umboleki kufuneka ukuba ulinde ukuyeka isicelo, alahlekelwe data ngenxa yokunye ngaphandle unhandled, okanye nje inxalenye umyalezo elivelayo esixela ukuba kukho into engalunganga.

Ukusingatha ngaphandle Java

Yintoni sixoxe? I Java ulwimi lwakhe ngaphandle yokuphatha umsebenzi eyakhelwe-ngaphakathi. Kakade ke, ipesenti enkulu isiphoso wabanjwa ngomnye ekuqulunqweni yeqonga, le nkqubo iza kwazisa ngokuzenzekelayo ukuba ukusetyenziswa ayisendim kunokwenzeka. Kodwa kukho olu hlobo ngaphandle okwenzeka sokusebenza. Umphuhlisi kufuneka ukwazi ukujonga kwaye ukuyila ikhowudi ukuze akazange kunokubangela imposiso, wawenza ngendlela ekhethekileyo wanikelwa ulawulo kwelinye isebe.

E Java, oku ezibekwe yi-compiler ukunqakula umnyinyiva, ngoko aziwa iingxaki ngazo nento abe iipateni umthambo eqhelekileyo.

ezingafakwanga eziphambili

Umzekelo kwecacileyo, apho unako ukufumana umnyinyiva - eli candelo. Nangona elula, ngokwemiqathango, njengoko nomabi, babe zero, nto leyo eya kukhokelela imposiso. Kaloku, ukuba kunokwenzeka ukuqikelela ukuvela elidlulileyo nokuthintela. Kodwa olu khetho alukho osoloko ukho, ngoko kokukhwela ngaphandle kufuneka ihlelwe ngqo xa kuthe "sahlule ngo zero".

The Java ngesixhobo ukuba ganga ngoku impazamo processing sijongeka njengoku:

  • bemfumba Ngaphandle into idaliwe, kwakunye naziphi na ezinye;
  • ngokwemvelo yenkqubo uphazamiseka;
  • mechanism exclusion izama ukufumana enye indlela eya kuqhubeka ikhowudi;
  • Fumana kubulawa ekhuselekileyo yenkqubo kwi kumqhubekekisi, umsebenzi okanye babuyiselwe, okanye kuza kwenzeka nokuzalisekisa Ngaphandle ngendlela ekhethekileyo.

Umzekelo elula ekudaleni impazamo ingakhangeleka ngolu hlobo:

ukuba (a null ==)

ulahle NullPointerException entsha ();

Apha, variable a lukhangelwe kwi ukundululwa, ie, ayikho nokuba kukhankanywa into null. Ukuba le meko iye yakhula kwaye kufuneka ukuphathwa ezizodwa, umnyinyiva iphoswe yi NullPointerException omtsha kwebhola ().

Zimbalwa iinkcukacha malunga amagama

Xa usebenza ngaphandle kuyimfuneko rhoqo ukusebenzisa le Java elingundoqo ukubhekisela isenzo esithile. Le ulwimi lokuprograma lwabo amahlanu:

  • Zama. Le igama nto kakade, yaye oko kuthetha inguqulelo ibe icandelo lwekhowudi ukuba lingaphosela umnyinyiva. Block braces limited {}.
  • Catch. It emosha uhlobo ngaphandle efunekayo yaye uliphathe ngokufanelekileyo.
  • Ekugcineni. Le igama ungayikhetha kwaye isetyenziswa ukwenza ezithile ikhowudi, nto leyo efunekayo kunjalo, nokuba akukho esisodwa awukafikeleli. Ifakiwe ngqo emva kwetrayi block.
  • Phosa - ikuvumela wenze Java ngaphandle ukusuka naphi na.
  • Liphosa - a elingundoqo ukuba obekwe kwi utyikityo indlela. Oku kuthetha ukuba le ndlela yokuziphatha ilandelayo lingaphosela i Ngaphandle kolu hlobo Java. Le mark isebenza uphawu ababhekisi ekufuneka kukhunjulwa - le ndlela akakwazi ukusebenza njengoko kulindeleke kuye.

Ukuganga nge itrayi

Inkululeko ngaphandle Java, kuthatha ngokwendalo ukuba iya kusingathwa ngendlela ekhethekileyo. Eyona ndlela elula ukuyenza loo nto, ukuba icandelo ikhowudi sibiyelwe ngaphandle kwiiflethi. Yeyiphi inokuba liqulathe umnyinyiva. Xa usenza oku ikhowudi, kumatshini onesiqhamo uza kufumana i imeko engalindelekanga, uqonde ukuba kukho block kakhulu kwaye transfers ukulawula kwisikhululo le nkqubo.

Ikhowudi Java lisongelwe itrayi ekhethekileyo block, apho inokuba umnyinyiva. Ngoko ke, wabeka kwiimeko eziliqela ezingalindelekanga eziya kubanjwa kwindawo enye, hayi ikhowudi raspolzayas.

Eyona yoqobo ikhowudi kwiyunithi elihambisayo imi ngolu hlobo lulandelayo:

zama {

// Nantsi eminye ikhowudi ukuba kudaleke umnyinyiva

} Catch (Tip_isklyucheniya_1 identifikator_1) {

// Apha kukho ngaphandle yokuphatha, ngokutsho uhlobo yayo nemiqathango;

} Catch (Tip_isklyucheniya_2 identifikator_2) {

// Apha kukho ngaphandle yokuphatha, ngokutsho uhlobo yayo nemiqathango;

}

catch beenkcubeko ingxelo yokuba ikhowudi, nokuskena libe ngaphandle, ukuze uphathwe njengoko kuchaziwe ngezantsi, ukuba lithobela uhlobo yayo. Umchongi ingasetyenziswa xa kulungiswa kwibhloko ikhowudi njengoko iingxoxo.

Ekugcineni

Njengoko kwacaca ukususela kwisahluko esingaphambili, iibhloko catch ukubamba ngaphandle kwaye ezinokuzisebenza. Kodwa ke amaxesha amaninzi kuvela imeko apho ndifumana ndibaleka ikhowudi ethile, kungakhathaliseki nokuba bathe babanjwa iimpazamo. Kuba oku kukho elingundoqo ekugqibeleni. Isetyenziswa ukunyusa amaxabiso zokubala ezahlukeneyo, ukuvala iifayile okanye umsebenzi womnatha.

Leli cebo kuveza iibhloko lokubambisa eziliqela ceba iindlela babambisa ngaphandle. Umzekelo, ikhowudi equlethwe kule itrayi kudala imeko engalindelekanga ezifana Cold. Emva koko, i console ziya kuboniswa ibinzana «Ukuhlaselwa ebandayo!» Ke «Ngaba loo nto nomxhelo ngayo?». Oko kukuthi, ekugqibeleni ibloko esiqhutywa ngayo nayiphi na imeko.

Enyanisweni, indlela yokuphepha kuvusa ekugqibeleni apho. Elidityaniswe kunye nokuzaliswa kumatshini onesiqhamo. Fumana ukuphumeza njani, kunokwenzeka kwi kwizikhewu ezikule Internet.

igama ukuphoswa

Ukuphosa kudala ngaphandle. ezinesintaksi na ngolu hlobo lulandelayo:

ulahle NewException entsha ();

Kukho udale ngaphandle entsha uhlobo NewException (). Njengoko uhlobo zingasetyenziswa sele zibandakanyiwe kwiiklasi Java ilayibrari standard yaye ngaphambili ichazwa umbhekisi phambili imveliso yayo.

Le kuyilo iyinxalenye inkcazo yalo naluphi na indlela, apho ifowuni kufuneka ke ngoko kwenzeka phakathi block itrayi, ukuze babe nako ukukhusela kuyo.

yemfihlo uphosa

Kuthekani ukuba le nkqubo yophuhliso imeko apho indlela lingaphosela umnyinyiva, kodwa bengenako ukuphatha kakuhle. Ukuza kuthi ga ngoku, kule utyikityo indlela ikhankanya ilizwi lilo kunye nohlobo ngaphandle kunokwenzeka.

Le nkulumo luhlobo inkomba developers Iklayenti le ndlela ayikho nako ukumelana ngaphandle babo. Ukongeza, ukuba uhlobo impazamo lukhangelwe, ngoko ke compiler kuya kunyanzela ngokucacileyo cela yona.

Zama kwizibonelelo

Ababhekisi phambili Java version 7 zaziquka ezintsha enkulu, njengoko block itrayi unyango kunye nezixhobo zokusetyenziswa.

izinto ezininzi sadalwa Java, emva kokusetyenziswa kufuneka uvale phantsi yokulondoloza izibonelelo. Ngaphambili ke kwafuneka ukuba zikuthathele ingqalelo oku akhawunti ukuyeka le mizekelo ngesandla. Ngoku, ke, bevela interface AutoClosable. Kuyanceda ukuvala ngokuzenzekelayo izinto sele ibekwe kwibhloko itrayi. Ngale ndlela kuye lula kakhulu ukuba ubhale ikhowudi kwi sofundo yayo inyuswe kakhulu.

Iiklasi Own ngaphandle Java

Abenzi bemeko- ulwimi ochazwe lokuprograma kwazithathela ingqalelo izinto ezininzi iintlobo zoyilo zemeko kaxakeka. Nangona kunjalo, zonke iinketho ukuthintela umphumo iziganeko akathandi kusebenza, ngoko Java laphumeza ubuchule ukuchaza iimeko zabo, kufanelekile ukuba iimfuno ikhowudi ethile.

Indlela elula ukwenza - ilifa ukusuka ufanelekileyo ukuba kwimeko into.

kwakukho ilifa ngulo, iklasi esetyenziswa ukuchaza ngaphandle zakho. In MyException uye abakhi ezimbini - default, okwesibini - kunye argument uhlobo uml Umtya.

Ngoko, kwi f indlela FullConstructors eklasini kawonke kwaphunyezwa, nto leyo iqulathe utyikityo lilo MyException. Le igama kuthetha ukuba f lingaphosela ngathi Java MyException ngaphandle. Ngaphezu koko, emzimbeni indlela luvelise itekisi ulwazi imveliso console ngokwayo kwaye isizukulwana MyException kanye, yi kwebhola.

Indlela yesibini yahlukile kancinane wokuqala ukuba xa wenze i ngaphandle, udlulela umtya i parameter, eza kuboniswa kwi konsole kwi ubambisa. In the main kucacile ukuba f () kunye g () babekwa ngendlela lokukhangela itrayi wafumanana elingundoqo alungiswa ukuba zifake MyException. Isiphumo ukuprosesa ukubonisa umyalezo wemposiso ukuya console:

Ngaloo ndlela ke ukongeza Java ngaphandle, ngesandla sakhe.

ngaphandle Architecture

Njengazo zonke izinto Java, ngaphandle nazo njengelifa yaye isakhiwo oluneqela elinegunya. ingcambu I-elementi zonke iziphoso aphoswe kule ulwimi lokuprograma na udidi java.lang.Throwable. Njengelifa ivela kuye iindidi ezimbini - Imposiso kunye Imeko engalawulwa ngulo mthetho.

Imposiso - kukhomba impazamo ezibalulekileyo kwaye ngaphandle Java yokhangelo ingakhangelwa. Interception and processing loo data kwiimeko ezininzi kwenzeka ezingeni yoyilo yaye ayikho imfuneko yokwazisa kwi khowudi isicelo lokugqibela.

Eyona ezininzi eziqhele ukusetyenziswa iklasi ekudaleni nokuhlalutya ezizodwa yi Imeko engalawulwa ngulo mthetho. Nto leyo, yahlulahlulwe amasebe eziliqela, kuquka RuntimeException. Ngu RuntimeException kusuku sokusebenza kwexesha, oko kukuthi, ezenzeka ngexesha le program. Zonke izifundo ezithathwe ngalo unverifiable.

Kudla kukho iimeko

Xa ngaphandle Java, uluhlu leyo ithiwe thaca apha ngasezantsi, ezithi zisetyenziswe kakhulu, ngoko umele ukuchaza ngamnye ngokweenkcukacha:

  • ArithmeticException. Ezi ziquka iimpazamo ezinxulumene nemisebenzi arithmetic. Owona mzekelo yacaca - ukwahlulwa ngu zero.
  • ArrayIndexOutOfBoundsException - isibheno inani element uluhlu engaphezu zizonke ubude bayo.
  • ArrayStoreException - umzamo ukwabela uhlobo elementi engahambelani ziyakhele uluhlu.
  • ClassCastException - Ukuzama ukuba uhlobo olunye ukuba nonane.
  • IllegalArgumentException - usebenzisa ingxabano engalunganga apho sibizelwa indlela.
  • NegativeArraySizeException - okungaphandle xa wenze i uluhlu lwe ubukhulu ezimbi.
  • NullPointerException - gwenxa iimbekiselo ukuba null.
  • NumberFormatException - kwenzeka xa uguqulelo umtya kuphosakele elipheleleyo.
  • UnsupportedOperationException - operation ayixhaswanga.

Le mizekelo ibonisa iintlobo ngaphandle Java yokhangelo ingakhangelwa. Kodwa ke inkangeleko zihlolwe:

  • ClassNotFoundException - Class akafumaneki.
  • IllegalAcccessException - ukuthintela ukufikelela kwi eklasini.
  • InterruptedException - ukuphazanyiswa ukuhamba.
  • NoSuchFieldException - akukho edingekayo.

Ukutolikwa kwemiba engabandakanywayo

Ethetha ngaphandle nazo rhoqo kufuneka kuqatshelwe ukuba ukutyhilwa kwawo kuyilo, ubonakala ngokungachanekanga. Elilandelayo uluhlu emfutshane echaza ngokweenkcukacha, apho kusenokuba kukho imeko engalindelekanga.

NullPointerException. Kwimeko yokuqala xa kukho ngaphandle, ukuba ukubongoza kubhekiswa into elingana null. Kwakhona kudlulela ndlela zero iklasi umzekelo. NullPointerException ukuze aphoswe kwimeko zokufumana alinganayo ubude uluhlu null. Ukuze siphephe iimeko ezinjalo ngamaxesha aya kutshekisha iziza kwi null.

ArrayIndexOutOfBoundsException. Nayiphi na inkqubo awukwazi ukubakhona ngaphandle ukusetyenziswa amaqoqo. Ngako oko, le abanaluncedo rhoqo oko ukukhupha impazamo. Ngaphandle kwenzeka xa umphuhlisi ezama ukufikelela i-elementi uluhlu ukuba ayikho kuluhlu index. Umzekelo, ixabiso oyikhethileyo ngaphezulu okanye ngaphantsi ubude zero. rhoqo kakhulu ngenxa yokuba uluhlu liqala amanqaku e-zero.

iziphumo

Ukusebenza Java nketho - yimekobume isixhobo esinamandla, leyo lula kakhulu umsebenzi wenkqubo kwaye ivumela ukuba ukudala ecocekileyo akanayo nekhowudi iimpazamo. On isicelo imisebenzi njani kakuhle kwaye uzinzile ixhomekeke iwonga nakwigama lomphuhlisi.

Kakade ke, xa kukho iinkqubo ngaphezulu okanye ngaphantsi elula ukulandelela kwiimeko ezingaqhelekanga lula kakhulu. Kodwa izakhiwo ezinkulu nokuhambisa imida ezilikhulu ambalwa amawaka kunokwenzeka kuphela nje ngenxa yokuba uvavanyo lwexesha elide kunye USB.

Kuba Java Imposiso Ngaphandle kuvela kwezinye izicelo apho, ezinye iinkampani idini umvuzo xa befumana midlalo. Kakhulu ngabo ezibangela yaphula software nkqubo yokhuseleko.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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