የቁልፍ ልዩነት - የተረጋገጠ እና ያልተረጋገጠ ልዩ በጃቫ
ልዩነት የአሂድ ጊዜ ስህተት ነው። የተፈተሹ እና ያልተረጋገጡ ልዩ ሁኔታዎች በመባል የሚታወቁት ሁለት አይነት ልዩ ሁኔታዎች አሉ። የተረጋገጠ ልዩ ሁኔታ ሲከሰት የጃቫ መተግበሪያ እንደ ፋይል፣ መሳሪያ ወይም ዳታቤዝ ካሉ የውጭ ምንጮች ጋር ይገናኛል። እነዚህ ልዩ ሁኔታዎች በአቀናባሪው ተረጋግጠዋል። የተወሰኑ የተፈተሹ ልዩ ሁኔታዎች ምሳሌዎች ከ IO በስተቀር እና የፋይል ኖትፎውንድ ልዩ ናቸው። ምልክት ያልተደረገበት ልዩ ሁኔታ ሲከሰት፣ አፕሊኬሽኑ ከማንኛውም የውጭ ምንጭ ጋር አልተገናኘም። እነዚህ ልዩ ሁኔታዎች በአቀናባሪው አይመረመሩም። አንዳንድ ያልተመረጡ ልዩ ሁኔታዎች ምሳሌዎች አርቲሜቲክ ልዩ እና ArrayOutOfBound ልዩ ናቸው።ይህ መጣጥፍ በጃቫ ውስጥ በተረጋገጠ እና ያልተረጋገጠ ልዩነት መካከል ያለውን ልዩነት ያብራራል። በጃቫ ውስጥ በተፈተሸ እና ባልተረጋገጠ ልዩ ሁኔታ መካከል ያለው ቁልፍ ልዩነት የተረጋገጠ ልዩ ሁኔታ በአቀናባሪው ሲረጋገጥ ያልተረጋገጠ ልዩ ሁኔታ በአቀናባሪው የማይረጋገጥ መሆኑ ነው።
ከጃቫ የተለየ የተረጋገጠ ምንድን ነው?
የተረጋገጠ ልዩ ሁኔታ ሲከሰት የጃቫ መተግበሪያ ከውጭ መገልገያ ጋር ይገናኛል። ይህ መገልገያ እንደ አታሚ ያለ መሳሪያ ሊሆን ይችላል. እሱ ፋይል ወይም የውሂብ ጎታ ሊሆን ይችላል። ስለዚህ፣ እነዚያ ልዩ ሁኔታዎች በአቀናባሪው ተረጋግጠዋል። የ IO ልዩ ሁኔታ የተረጋገጠ ልዩ ሁኔታ ነው። በመሳሪያው ውስጥ ባለው ስህተት ምክንያት ይከሰታል. አፕሊኬሽኑ ወደሌለው ፋይል ሲገባ የፋይል ኖት ፎውንድ ልዩ ሁኔታን ይፈጥራል። አፕሊኬሽን ዳታ ለማከማቸት እንደ MySQL፣ Oracle ወዘተ ካሉ የውሂብ ጎታ ጋር ማገናኘት ይቻላል። ከመረጃ ቋት ጋር የተያያዘ ስህተት ከተፈጠረ፣ ከ SQL የተለየ ነው። እነዚያ የተወሰኑ የተፈተሹ ልዩ ሁኔታዎች ምሳሌዎች ናቸው። በእነዚህ ሁሉ ውስጥ, አፕሊኬሽኑ ከውጭ መገልገያ ጋር የተገናኘ ነው.በተመረጡ ልዩ ሁኔታዎች ውስጥ ልዩ ሁኔታዎችን ማስተናገድ ግዴታ ነው። ካልተያዘ, ትክክለኛው የፕሮግራሙ ፍሰት ይቋረጣል, እና የክፍል ፋይል አይፈጠርም. ስህተቱ የሚስተናገደው ሙከራውን በመጠቀም ነው።
ስእል 01፡ የተረጋገጠ ልዩ አያያዝ
ከላይ ባለው መሰረት የፋይል አንባቢው መረጃ ከፋይሉ አንብቧል። የ text1.txt ፋይል በተጠቀሰው ቦታ የለም. ልዩነቱን ሊሰጥ የሚችለው ኮድ በሙከራ እገዳ ውስጥ ተቀምጧል። ለማተም የተላከው መልእክት በመያዣው ውስጥ ነው። text1.txt የሚባል ፋይል ስለሌለ፣ ይህ FileNotFoundException ያስከትላል። ልዩ አያያዝን በመጠቀም መልእክቱ በስክሪኑ ላይ ታትሟል።
በጃቫ ውስጥ ያልተመረጡ ልዩ ነገሮች ምንድን ናቸው?
ያልተመረጡ ልዩ ሁኔታዎች በአቀናባሪው አይመረመሩም።ከተመረጡት ልዩ ሁኔታዎች በተለየ፣ ምልክት ካልተደረገባቸው በስተቀር፣ የጃቫ አፕሊኬሽኑ እንደ ፋይል፣ ዳታቤዝ ወይም መሳሪያ ካሉ ውጫዊ ምንጮች ጋር አልተገናኘም። አንዳንድ የተለመዱ ያልተመረጡ ልዩ ሁኔታዎች አርቲሜቲክ፣ ArrayOutOfBound እና NullPointer ልዩ ሁኔታዎች ናቸው።
int a=10፣ b=0;
int div=a/b;
System.out.println(div)፤
ይህ 'a'ን በዜሮ በመጥለቅ ምክንያት የሂሳብ ልዩነትን ያስከትላል። ከታች ያለውን ኮድ ይመልከቱ።
ስእል 02፡ አርቲሜቲክ ልዩ አያያዝ
ከላይ ባለው ፕሮግራም መሰረት፣ ተለዋዋጭ a የኢንቲጀር እሴት ነው። ተለዋዋጭ ለ 0 ነው. የእነዚህ ሁለት ቁጥሮች ክፍፍል በዜሮ መከፋፈል ነው. ስለዚህ፣ የሒሳብ ልዩነትን ያስከትላል። ሙከራ-ካች ብሎክን በመጠቀም ማስተናገድ ይቻላል።ልዩ ሁኔታዎችን ሊያስከትሉ የሚችሉት መግለጫዎች በሙከራ እገዳ ውስጥ ተቀምጠዋል። የሚታየው መልእክት በመያዣው ውስጥ ነው።
ከታች ያለውን የኮዱ ቁራጭ ይመልከቱ።
int array1={1, 2, 3, 4, 5};
System.out.println(array1[5])፤
ይህ ለየት ያለ ሁኔታ ይፈጥራል። ድርድር 1 5 አካላት ያሉት ድርድር ነው። የድርድር መነሻ መረጃ ጠቋሚ ዜሮ ነው። 5th ኢንዴክስ ዋጋ ማተም ከገደብ ውጭ ስለሆነ ልዩ ያደርገዋል። የድርድር 1 ከፍተኛው መረጃ ጠቋሚ 4 ነው።
ምስል 03፡ ArrayOutOfBound ልዩ አያያዝ
ከላይ ባለው ፕሮግራም መሰረት ድርድር 1 5 አካላት አሉት። ኤለመንቱን በመረጃ ጠቋሚ 6 ማተም ከገደብ ውጭ ስለሆነ ልዩ ሁኔታ ይፈጥራል። በድርድር 1 ውስጥ ሊከማች የሚችለው ከፍተኛው ኢንዴክስ 5 ነው። የስህተት መልዕክቱ የሚይዘው ማገጃውን በማስፈጸም ያትማል።
የተፈተሸ እና ያልተረጋገጠ ልዩነቱ በጃቫ መካከል ያለው ተመሳሳይነት ምንድን ነው
ሁለቱም ምልክት የተደረገባቸው እና ያልተረጋገጠ ልዩ በጃቫ በጃቫ ውስጥ የማይካተቱ ናቸው።
በጃቫ ውስጥ በተፈተሸ እና ያልተረጋገጠ ልዩነቱ ምንድን ነው?
በጃቫ የተረጋገጠ እና ያልተረጋገጠ ልዩ |
|
የተረጋገጠ ልዩ የሩጫ ጊዜ ስህተት በአቀናባሪው የተረጋገጠ ነው። | የማይታወቅ ልዩ ሁኔታ የሩጫ ጊዜ ስህተት በአቀናባሪው ያልተረጋገጠ ነው። |
ክስተት | |
የተረጋገጠ ልዩ ሁኔታ ሲከሰት የጃቫ አፕሊኬሽኑ እንደ ፋይል፣ መሳሪያ ወይም ዳታቤዝ ካሉ ውጫዊ ምንጮች ጋር ይገናኛል። | ምልክት ያልተደረገበት ልዩ ሁኔታ ሲከሰት የጃቫ አፕሊኬሽኑ ከውጭ ምንጭ ጋር አይገናኝም። |
ምሳሌ | |
IOException፣ FileNotFoundException፣ SQLEexception የተወሰኑ የተረጋገጡ የማይካተቱ ምሳሌዎች ናቸው። | የሒሳብ ልዩነት፣ ArrayOutOfBoundException፣ NullPointerException የተወሰኑ ያልተመረጡ የተለዩ ምሳሌዎች ናቸው። |
ማጠቃለያ - በጃቫ የተረጋገጠ እና ያልተረጋገጠ ልዩ
ልዩነት የፕሮግራሙን አፈፃፀም የሚያቋርጥ ክስተት ነው። የማይካተቱ ሁለት ዓይነቶች አሉ። የተረጋገጡ ልዩ ሁኔታዎች እና ያልተረጋገጡ ልዩ ነገሮች ይባላሉ። ይህ መጣጥፍ በተረጋገጠ ልዩ እና ያልተረጋገጡ ልዩ ሁኔታዎች መካከል ያለውን ልዩነት ተመልክቷል። በጃቫ መካከል የተረጋገጠ እና ያልተረጋገጠ ልዩ ሁኔታ በአቀናባሪው ሲረጋገጥ ያልተረጋገጠ ልዩ ሁኔታ በአቀናባሪው አይረጋገጥም። ልዩ ሁኔታዎች ትክክለኛውን የፕሮግራም አፈፃፀም ፍሰት ላይ ተጽእኖ ስለሚያሳድሩ, እነሱን ማስተናገድ ጥሩ የፕሮግራም አሠራር ነው.