— Scott McNealy, Sun Microsystems Chairman, President and ceo



Download 40,57 Mb.
Pdf ko'rish
bet305/555
Sana26.05.2022
Hajmi40,57 Mb.
#609235
1   ...   301   302   303   304   305   306   307   308   ...   555
Bog'liq
Head First Java (Kathy Sierra, Bert Bates) (z-lib.org)

 I’ll bite. WHY doesn’t the compiler care about those 
runtime exceptions? Aren’t they just as likely to bring the 
whole show to a stop?
A:
Most RuntimeExceptions come from a problem in 
your code logic, rather than a condition that fails at runtime 
in ways that you cannot predict or prevent. You cannot 
guarantee the file is there. You cannot guarantee the server 
is up. But you can make sure your code doesn’t index off the 
end of an array (that’s what the .length attribute is for). 
You WANT RuntimeExceptions to happen at development 
and testing time. You don’t want to code in a try/catch, for 
example, and have the overhead that goes with it, to catch 
something that shouldn’t happen in the first place. 
A try/catch is for handling exceptional situations, not flaws 
in your code. Use your catch blocks to try to recover from 
situations you can’t guarantee will succeed. Or at the very
least, print out a message to the user and a stack trace, so 
somebody can figure out what happened.
The compiler checks for everything 
except RuntimeExceptions.
The compiler guarantees:
RuntimeExceptions are NOT checked by the 
compiler. They’re known as (big surprise here) 
“unchecked exceptions”. You can throw, catch, 
and declare RuntimeExceptions, but you don’t 
have to, and the compiler won’t check.
InterruptedException
Exception
IOException
RuntimeException
NullPointerException
ClassCastException
Exceptions that are NOT subclasses of 
RuntimeException are checked for by 
the compiler. They’re called “checked 
exceptions”
If you throw an exception in your code you must declare it using 
the throws keyword in your method declaration.
If you call a method that throws an exception (in other words, 
a method that declares it throws an exception), you must 
acknowledge that you’re aware of the exception possibility.
One way to satisfy the compiler is to wrap the call in a try/catch. 
(There’s a second way we’ll look at a little later in this chapter.) 

Download 40,57 Mb.

Do'stlaringiz bilan baham:
1   ...   301   302   303   304   305   306   307   308   ...   555




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish