Përmbajtje:

Debugging Basic Java: 9 hapa
Debugging Basic Java: 9 hapa

Video: Debugging Basic Java: 9 hapa

Video: Debugging Basic Java: 9 hapa
Video: How To Debug Java Code The Right Way - Eclipse Debugger Full Tutorial 2024, Nëntor
Anonim
Korrigjimi bazë i Java
Korrigjimi bazë i Java

Ky udhëzues udhëzues mbulon një kontroll bazë hap pas hapi për trajtimin e gabimeve Java. Ky udhëzues nuk ofron asnjë ndihmë në ngritjen e softuerit të programimit java dhe pret që ju ta keni kryer tashmë këtë detyrë paraprakisht. Për përdorimin sa më të mirë të këtij udhëzuesi, kthehuni tek ai sa herë që ndodh një gabim për të cilin nuk jeni të sigurt dhe kontrolloni përmes 8 mundësive të zakonshme derisa ose të takoheni me një zgjidhje ose të arrini në fund. Mbani në mend, këta shembuj janë të gjithë relativisht themelorë dhe kanë për qëllim mbështetjen fillestare.

Para se të filloni të kontrolloni secilën zgjidhje të mundshme, hidhini një sy gabimit me të cilin Java po ju njofton. Çdo hap do të fillojë duke treguar gabimin me të cilin është i lidhur.

Hapi 1: "Gabim sintaksor, fut"; " për të përfunduar deklaratat e bllokut”

"Gabim sintaksor, fut"; " për të përfunduar deklaratat e bllokut”
"Gabim sintaksor, fut"; " për të përfunduar deklaratat e bllokut”

Ky është gabimi më themelor i Sintaksës, thjesht do të thotë që keni harruar një pikëpresje në fund të deklaratës tuaj. Të gjitha deklaratat e deklaratës dhe shprehjes do të përfundojnë me pikëpresje. Në disa raste të tjera të tilla si me if, else, dhe për deklarata nuk do të keni nevojë të vendosni pikëpresje.

Hapi 2: "nuk mund të zgjidhet në një variabël", ose "futni VariableDeclarators"

"Nuk mund të zgjidhet në një variabël", ose "fut VariableDeclarators"
"Nuk mund të zgjidhet në një variabël", ose "fut VariableDeclarators"

Ky gabim sintaksor ndodh kur po përpiqeni të përdorni një ndryshore pa e krijuar atë më parë ose duke i dhënë asaj një lloj të dhënash. Thjesht shtoni llojin e të dhënave që lidhet me ndryshoren tuaj, shembujt mund të jenë "int", "boolean", "char" dhe "double".

Hapi 3: "futni"} për të përfunduar ClassBody"

"Fut"} "në Complete ClassBody
"Fut"} "në Complete ClassBody

Gabimi ynë i sintaksës tjetër ka të bëjë me kllapa kaçurrelë. Normalisht do të shihni që gabimi të ndodhë kur të keni humbur njërën ose të dy kllapat kaçurrelë. Nëse ju mungojnë të dy do të shihni gabimin, "futni" ClassBody "për të përfunduar ClassDeclaration". Nëse mungon vetëm njëra ose do të shihni gabimin, "futni"} për të përfunduar ClassBody "ose" {pritet pas këtij simboli " Me Gabimet normalisht do të ndodhin në linjë nëse kllapa kaçurrelë mund të vendoset për të siguruar një rregullim.

Hapi 4: Lak i pafund

Lak i pafund
Lak i pafund

Tani shikojmë një rast ku një gabim ka shumë të ngjarë të mos sigurohet nga klienti Java. Kjo ndodh kur keni një lak të tillë si një lak while ose një lak for që qarkullon pafundësisht. Nuk ka një përgjigje të thjeshtë për zgjidhjen, sepse kodi i secilit person do të ndryshojë, por përpjekja për të shtuar një kufi shtesë manual brenda kodit duhet të jetë qëllimi kryesor. Pas asaj përpjekjeje për të kuptuar pse kodi juaj nuk ishte në gjendje të plotësonte gjendjen tuaj të thyerjes së sytheve?

Hapi 5: "Nuk mund të zgjidhet në një lloj"

"Nuk mund të zgjidhet në një lloj"
"Nuk mund të zgjidhet në një lloj"
"Nuk mund të zgjidhet në një lloj"
"Nuk mund të zgjidhet në një lloj"

Ky gabim sintaksor ka të bëjë me importet. Sa herë që duam të përdorim një API nga një klasë tjetër, duhet ta importojmë atë klasë në atë aktuale. Një dukuri e zakonshme për këtë është përdorimi i funksionit Skaner, për ta përdorur atë duhet të importoni klasën “java.util. Scanner”. Mbani në mend se ky është vetëm një shembull.

Hapi 6: "Metoda" "është e papërcaktuar për llojin"

"Metoda" "është e papërcaktuar për llojin"
"Metoda" "është e papërcaktuar për llojin"

Ky gabim sintaksor ndodh kur harrojmë emrin e klasës gjatë një thirrje metode. Shembulli kryesor për këtë do të ishte sa herë që përpiqemi të shtypim. Nëse jeni dikush që po del nga një gjuhë që përdor një funksion të thjeshtë printimi (), atëherë kjo mund të ndodhë shpesh. Në vend të kësaj do të dëshironi të përdorni System.out.print () ose System.out.println (). Kjo do të ndodhë gjithmonë gjatë thirrjeve të metodës.

Hapi 7: "Vargu Literal nuk mbyllet siç duhet nga një citim i dyfishtë"

"Vargu Literal nuk mbyllet siç duhet nga një citim i dyfishtë"
"Vargu Literal nuk mbyllet siç duhet nga një citim i dyfishtë"

Kjo Sintaksë ndodh kur ne po përdorim Strings. Problemi ka të bëjë me një varg të hapur por jo të mbyllur. Gjithmonë shënohet në vijën ku ndodh dhe fiksohet duke vendosur atë kuotim të dytë të dyfishtë. Si një shënim anësor, nëse përpiqeni të përdorni citate të vetme për Vargjet që gjithashtu do të rezultojnë në një gabim "konstante e pavlefshme e karakterit".

Hapi 8: "Lloji i kthimit për metodën që mungon"

"Lloji i kthimit për metodën mungon"
"Lloji i kthimit për metodën mungon"
"Lloji i kthimit për metodën mungon"
"Lloji i kthimit për metodën mungon"

Sintaksa e fundit që vlen të përmendet është lloji i metodës së kthimit dhe kthimi që mungon. "Lloji i kthimit për metodën mungon" ndodh kur keni një metodë që përpiqet të kthejë diçka ndërsa mungon specifikimi i atij lloji në nënshkrimin e metodës. Gabimi do të ndodhë në nënshkrim dhe zakonisht zgjidhet shumë shpejt. Kur bëhet fjalë për gabimin "metoda duhet të kthejë një rezultat të llojit" ju vetëm duhet të siguroheni që të ktheni diçka me atë lloj.

Hapi 9: Ndihmë shtesë

Nëse nuk keni qenë në gjendje të gjeni një rregullim për gabimin tuaj, atëherë konsideroni të provoni një nga këto opsione të mëposhtme. Kopjoni shënimin e Java mbi gabimin që ndodhi dhe përpiquni të gjeni një zgjidhje duke e ngjitur atë në ndonjë kërkim në internet. Kërkoni për disa udhëzues më të avancuar ose të qartë të trajtimit të gabimeve Java. Së fundmi, nëse asnjë nga këto opsione nuk ju ndihmoi dhe keni kohë për të kursyer, përpiquni të postoni pyetjen tuaj në një forum mbështetës siç është Stackoverflow. Zakonisht do të merrni një rregullim përgjigjeje me një shpjegim se pse gabimi ndodhi në radhë të parë.

Recommended: