Professional Documents
Culture Documents
Ni dung
Tnh hung pht sinh ngoi l Cch x l ngoi l lm vic trong C# Cu lnh try-catch-finally
Tnh hung
Nhng li pht sinh khi rutime c th lm h hi chng trnh Khng phi li lp trnh VD: mt s tnh hung vit d liu vo file
Cch x l trc y
GET A FILENAME OPEN THE FILE IF THERE IS NO ERROR OPENING THE FILE READ SOME DATA IF THERE IS NO ERROR READING THE DATA PROCESS THE DATA WRITE THE DATA IF THERE IS NO ERROR WRITING THE DATA CLOSE THE FILE IF THERE IS NO ERROR CLOSING FILE RETURN
Hu ht cc bc c kh nng tht bi Kh xc nh chnh xc li t nhng thng tin tr v ca hm th vin on code phi thc hin ri mi bit li
Cch x l Exception
TRY TO DO THESE THINGS: GET A FILENAME OPEN THE FILE READ SOME DATA PROCESS THE DATA WRITE THE DATA CLOSE THE FILE RETURN IF ERROR OPENING THE FILE THEN ... IF ERROR READING THE DATA THEN ... IF ERROR WRITING THE DATA THEN ... IF ERROR CLOSING THE FILE THEN ...
on code x l ngn gn, d c Logic chng trnh hp l hn, nhng on nghi ng c li nm trong vng Try Cho php x l tnh hung li r rng v n gin
Cc i tng Exception
CLR s xc nh li v pht sinh ta i tng Exception i tng Exception ny c nm tr li stack ch cho mt phng thc bt li . Nu Exception ny khng c chng trnh catch th CRL s in ra thng ip li
M hnh gi x l Exception
CLR Runtime
Exceptions Passed Up
First Method
S dng try-catch
t code c kh nng dn n ngoi l vo khi try Cung cp cc khi catch theo sau try C th cung cp tt c catch cho cc li nu mun x l, bng cch s dng cc lp exception thch hp Nu khng cung cp catch cho mt ngoi l, th exception ny n lan truyn ln trn.
C php Try-Catch
Code c kh nng dn n li
try {
RiskyBussiness(); } catch (SomeException e ) { // Handle code }
on x l vi tnh hung c li
Khi try
Bao gm cc phn
T kha try Theo sau khi {} Khi {} bt buc phi c, khc vi {} trong if hay for t bt c cu lnh no c kh nng pht sinh ra ngoi l
Khi catch
V d try-catch
S dng Finally
Khi mt exception c nm ra
Lung thc thi s nhy vo khi catch x l n. Mt s on code gii phng ti nguyn c th b b qua // ngoi l c pht sinh // on code ny b b qua, d file cha ng
Khi try-catch c phn option l finally Lun lun c gi S dng dn dp cc ti nguyn ang nm gi
VD c try-catch-finally
Lnh throw
Lp Exception
C 2 loi ngoi l
ApplicationException: thng lm lp c bn cho lp ngoi l pht sinh t ng dng SystemException: do CLR pht sinh
Lp Exception (2)
Mt s lp Exception thng dng
T to lp exception
Tm tt
Exception lm cho chng trnh cht ch hn. Trnh tetminal chng trnh t ngt v nhng li runtime Tp cc lp Exception a dng, bao hm cc vn pht sinh lc runtime Lp Exception l lp c s cho cc lp x l ngoi l trong .NET D dng nh ngha lp ngoi l, v pht sinh ngoi l trong chng trnh