Негизги айырма – Java'да текшерилген жана текшерилбеген өзгөчө учур
Иштеп чыгуу катасы. Текшерилген жана текшерилбеген өзгөчөлүктөр деп аталган эки түрү бар. Текшерилген өзгөчөлүк пайда болгондо, Java тиркемеси файл, түзмөк же маалымат базасы сыяктуу тышкы ресурска туташкан. Бул өзгөчөлүктөр компилятор тарабынан текшерилет. Текшерилген өзгөчөлүктөрдүн кээ бир мисалдары IO жана FileNotFound өзгөчөлүгү болуп саналат. Текшерилбеген өзгөчөлүк пайда болгондо, колдонмо эч кандай тышкы ресурска туташкан эмес. Бул өзгөчөлүктөр компилятор тарабынан текшерилбейт. Текшерилбеген бөтөнчөлүктөрдүн кээ бир мисалдары арифметикалык өзгөчөлүк жана ArrayOutOfBound Exception болуп саналат. Бул макалада Javaдагы текшерилген жана текшерилбеген өзгөчөлүктүн ортосундагы айырма талкууланат. Java'дагы текшерилген жана белгиленбеген өзгөчөлүктүн негизги айырмасы, текшерилбеген өзгөчөлүк компилятор тарабынан текшерилет, ал эми текшерилбеген өзгөчөлүк компилятор тарабынан текшерилбейт.
Java'да белгиленген өзгөчөлүк деген эмне?
Текшерилген өзгөчөлүк болгондо, Java колдонмосу тышкы булакка туташып турат. Бул ресурс принтер сыяктуу түзмөк болушу мүмкүн. Бул файл же маалымат базасы болушу мүмкүн. Ошондуктан, ал өзгөчөлүктөр компилятор тарабынан текшерилет. IO өзгөчөлүгү - бул текшерилген өзгөчөлүк. Бул аппараттын катасынан улам пайда болот. Колдонмо жок файлга кирип жатканда, ал FileNotFound өзгөчөлүгүн жаратат. Колдонмо маалыматтарды сактоо үчүн MySQL, Oracle ж.б. сыяктуу маалыматтар базасына туташтырылышы мүмкүн. Эгер маалымат базасына байланыштуу ката пайда болсо, ал SQL Exception болот. Бул текшерилген өзгөчөлүктөрдүн кээ бир мисалдары. Булардын бардыгында тиркеме тышкы ресурска туташкан. Текшерилген өзгөчөлүктөрдө өзгөчө жагдайды иштетүү милдеттүү. Эгер ал иштетилбесе, программанын туура агымы токтотулат жана класс файлы түзүлбөйт. Катаны try, catch блогу аркылуу чечсе болот.
01-сүрөт: Текшерилген өзгөчө кырдаалды иштетүү
Жогорудагыларга ылайык, FileReader файлдан маалыматтарды окуйт. text1.txt файлы көрсөтүлгөн жерде жок. Өзгөчө абалды бере турган код try блогунун ичинде жайгаштырылат. Басып чыгаруу үчүн билдирүү кармоо блогунун ичинде. text1.txt деп аталган файл жок болгондуктан, бул FileNotFoundException пайда кылат. Өзгөчө кырдаалды колдонуу менен, билдирүү экранга басып чыгарылат.
Java'да белгиленбеген өзгөчөлүктөр деген эмне?
Белгисиз өзгөчөлүктөр компилятор тарабынан текшерилбейт. Текшерилбеген өзгөчөлүктөрдөн айырмаланып, Java тиркемеси файл, маалымат базасы же түзмөк сыяктуу тышкы ресурска туташкан эмес. Кээ бир жалпы белгиленбеген өзгөчөлүктөр - Arifmetic, ArrayOutOfBound жана NullPointer Exceptions.
int a=10, b=0;
int div=a/b;
System.out.println(div);
Бул 'a' нөлгө чөккөндүктөн арифметикалык өзгөчөлүктү жаратат. Төмөнкү кодду караңыз.
02-сүрөт: Арифметикалык өзгөчөлүктү иштетүү
Жогорудагы программага ылайык, өзгөрмө a бүтүн маани. Өзгөрмө b 0. Бул эки сандын бөлүнүшү нөлгө бөлүнөт. Демек, ал арифметикалык өзгөчөлүккө алып келет. Аны try-catch блогунун жардамы менен чечсе болот. Өзгөчө абалга алып келиши мүмкүн болгон билдирүүлөр try блогунун ичинде жайгаштырылат. Көрсөтүлө турган билдирүү кармоо блогунда.
Коддун төмөнкү бөлүгүн караңыз.
int массив1={1, 2, 3, 4, 5};
System.out.println(array1[5]);
Бул өзгөчөлүккө алып келет. Массив1 5 элементтен турган массив. Массивдин баштапкы индекси нөлгө барабар. 5th индекстин маанисин басып чыгаруу өзгөчө абалга алып келет, анткени ал чектен чыгып кеткен. Массивдин1 максималдуу индекси 4.
03-сүрөт: ArrayOutOfBound өзгөчө кырдаалды иштетүү
Жогорудагы программага ылайык, массив1 5 элементтен турат. 6 индекси бар элементти басып чыгаруу өзгөчө абалга алып келет, анткени ал чектен чыгып кеткен. Массив1де сактала турган максималдуу индекс 5. Ката кабары кармоо блогун аткаруу менен басып чыгарылат.
Java'да текшерилген жана текшерилбеген өзгөчө жагдайдын кандай окшоштугу бар
Java'дагы Белгиленген жана Белгисиз Экөө тең Java'дагы өзгөчө кырдаалдардын түрлөрү
Java'да текшерилген жана текшерилбеген өзгөчө жагдайдын ортосунда кандай айырма бар?
Тектелген жана Java'дагы Белгисиз өзгөчө учур |
|
Текшерилген өзгөчө учур компилятор тарабынан текшерилген аткаруу убагы катасы. | Текшерилбеген өзгөчө учур компилятор тарабынан текшерилбеген аткаруу учурундагы ката. |
Окуя | |
Тектелген өзгөчөлүк болгондо, Java колдонмосу файл, түзмөк же маалымат базасы сыяктуу тышкы булакка туташып турат. | Текшерилбеген өзгөчө кырдаал болгондо, Java колдонмосу тышкы булакка туташкан эмес. |
Мисалдар | |
IOException, FileNotFoundException, SQLException - бул текшерилген өзгөчөлүктөрдүн кээ бир мисалдары. | Арифметикалык өзгөчөлүк, ArrayOutOfBoundException, NullPointerException - белгиленбеген өзгөчөлүктөрдүн кээ бир мисалдары. |
Корытынды – Java'да текшерилген жана текшерилбеген өзгөчө учур
Өзгөчө учур - бул программа агымынын аткарылышын үзгүлтүккө учураткан окуя. Өзгөчөлүктөрдүн эки түрү бар. Алар текшерилген өзгөчөлүктөр жана текшерилбеген өзгөчөлүктөр деп аталат. Бул макалада текшерилген өзгөчөлүк менен текшерилбеген өзгөчөлүктөрдүн ортосундагы айырма талкууланган. Javaдагы текшерилген жана текшерилбеген өзгөчөлүктүн айырмасы, текшерилбеген өзгөчөлүк компилятор тарабынан текшерилет, ал эми текшерилбеген өзгөчөлүк компилятор тарабынан текшерилбейт. Өзгөчө жагдайлар программанын туура агымына таасирин тийгизгендиктен, аларды иштетүү жакшы программалоо практикасы болуп саналат.