黄色在线观看视频-黄色在线免费看-黄色在线视频免费-黄色在线视频免费看-免费啪啪网-免费啪啪网站

首頁 考試吧論壇 Exam8視線 考試商城 網絡課程 模擬考試 考友錄 實用文檔 求職招聘 論文下載
2011中考 | 2011高考 | 2012考研 | 考研培訓 | 在職研 | 自學考試 | 成人高考 | 法律碩士 | MBA考試
MPA考試 | 中科院
四六級 | 職稱英語 | 商務英語 | 公共英語 | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT
新概念英語 | 成人英語三級 | 申碩英語 | 攻碩英語 | 職稱日語 | 日語學習 | 法語 | 德語 | 韓語
計算機等級考試 | 軟件水平考試 | 職稱計算機 | 微軟認證 | 思科認證 | Oracle認證 | Linux認證
華為認證 | Java認證
公務員 | 報關員 | 銀行從業資格 | 證券從業資格 | 期貨從業資格 | 司法考試 | 法律顧問 | 導游資格
報檢員 | 教師資格 | 社會工作者 | 外銷員 | 國際商務師 | 跟單員 | 單證員 | 物流師 | 價格鑒證師
人力資源 | 管理咨詢師考試 | 秘書資格 | 心理咨詢師考試 | 出版專業資格 | 廣告師職業水平
駕駛員 | 網絡編輯
衛生資格 | 執業醫師 | 執業藥師 | 執業護士
會計從業資格考試會計證) | 經濟師 | 會計職稱 | 注冊會計師 | 審計師 | 注冊稅務師
注冊資產評估師 | 高級會計師 | ACCA | 統計師 | 精算師 | 理財規劃師 | 國際內審師
一級建造師 | 二級建造師 | 造價工程師 | 造價員 | 咨詢工程師 | 監理工程師 | 安全工程師
質量工程師 | 物業管理師 | 招標師 | 結構工程師 | 建筑師 | 房地產估價師 | 土地估價師 | 巖土師
設備監理師 | 房地產經紀人 | 投資項目管理師 | 土地登記代理人 | 環境影響評價師 | 環保工程師
城市規劃師 | 公路監理師 | 公路造價師 | 安全評價師 | 電氣工程師 | 注冊測繪師 | 注冊計量師
繽紛校園 | 實用文檔 | 英語學習 | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲
您現在的位置: 考試吧(Exam8.com) > 計算機等級考試 > 計算機二級 > Delphi > 復習資料 > 正文

2011計算機等考Delphi講義:異常處理與程序調試

來源:考試吧Exam8.com) 2010-10-28 11:26:53 考試吧:中國教育培訓第一門戶 模擬考場
Delphi提供了一套強大的異常處理機制。巧妙地利用它,可以使你的程序更為強健,使用更為友好。

  12.3 異常響應

  異常響應為開發者提供了一個按自己的需要進行異常處理的機制。try …except …end形成了一個異常響應保護塊。與finally不同的是:正常情況下except 后面的語句并不被執行,而當異常發生時程序自動跳到except,進入異常響應處理模塊。當異常被響應后異常類自動清除。

  下面的例子表示了文件打開、刪除過程中發生異常時的處理情況:

  uses Dialogs;

  var

  F: Textfile;

  begin

  OpenDialog1.Title := 'Delete File';

  if OpenDialog1.Execute then

  begin

  AssignFile(F, OpenDialog1.FileName);

  try

  Reset(F);

  if MessageDlg('Erase ' +OpenDialog1.FileName + '?',

  mtConfirmation, [mbYes, mbNo], 0) = mrYes then

  begin

  System.CloseFile(F);

  Erase(F);

  end;

  except

  on EInOutError do

  MessageDlg('File I/O error.', mtError, [mbOk], 0);

  on EAccessDenied do

  MessageDlg('File access denied.', mtError, [mbOk], 0);

  end;

  end;

  end.

  保留字on…do用于判斷異常類型。必須注意的是:except后面的語句必須包含在某一個on…do模塊中,而不能單獨存在。這又是同finally不同的一個地方。

  12.3.1 使用異常實例

  上面所使用的異常響應方法可總結為如下的形式:

  on ExceptionType do

  {響應某一類的異常}

  這種方法唯一使用的信息是異常的類型。一般情況下這已能滿足我們的需要。但我們卻無法獲取異常實例中包含的信息,比如異常消息、錯誤代碼等。假設我們需要對它們進行處理,那么就必須使用異常實例。

  為了使用異常實例,需要為特定響應模塊提供一個臨時變量來保存它:

  on EInstance : ExceptionType do …

  在當前響應模塊中我們可以象使用一個普通對象那樣來引用它的數據成員。但在當前響應模塊之外不被承認。

  下面的代碼用于獲取異常消息并按自己的方式顯示它:

  {窗口中包括一個ScrollBar部件,一個Button部件}

  procedure TErrorForm.Button1Click(Sender: TObject);

  begin

  try

  ScrollBar1.Max := ScrollBar1.Min-1;

  except

  on E: EInvalidOperation do

  MessageDlg('Ignoring Exception:'+E.Message,

  mtInformation,[mbOK],0);

  end;

  end;

  12.3.2 提供缺省響應

  在異常響應模塊中,一般我們只對希望響應的特定異常進行處理。如果一個異常發生而響應模塊并沒有包含對它的處理代碼,則退出當前響應模塊,異常類仍被保留。

  為了保證任何異常發生后都能在當前響應模塊中被清除,可以定義缺省響應:

  try

  {程序正常功能}

  except

  on ESomething do

  {響應特定異常}

  else

  {提供缺省響應}

  end;

  由于else可以響應任何異常,包括我們一無所知的異常,因此在缺省響應中最好只包括諸如顯示一個消息框之類的處理,而不要改變程序的運行狀態或數據。

上一頁  1 2 3 4 5 6 7 8 9 10  ... 下一頁  >> 
  相關推薦:2010年9月計算機等級考試試題及答案解析專題
       預告:名師解析2010年9月計算機等級考試試題答案
       2010年9月計算機等級考試成績查詢時間及入口
       2010年9月計算機等考成績查詢短信免費提醒開通
文章搜索
版權聲明:如果計算機等級考試網所轉載內容不慎侵犯了您的權益,請與我們聯系800@exam8.com,我們將會及時處理。如轉載本計算機等級考試網內容,請注明出處。
主站蜘蛛池模板: 日韩手机专区 | 欧美激情一区二区亚洲专区 | 久久久噜噜噜久久久 | 国产成人精品免费视频大全办公室 | 一级特级毛片 | 狠狠色狠狠色综合日日五 | 天天操天天摸天天干 | 免费看日韩 | 一级特黄爽大片刺激 | 看全色黄大色黄大片女图片 | 亚色在线视频 | 中国一级毛片特级毛片 | 亚洲欧美日韩中文在线 | 美女一级a毛片免费观看 | 夜色在线影院 | 亚洲第一免费播放区 | 欧美人与性禽xxxx | 久久久久亚洲视频 | 午夜影院免费入口 | 美女视频黄频免费大全软件 | 亚洲天堂v | 精品欧美中国福利第一导航 | 最刺激黄a大片免费观看 | 免费一级毛片清高播放 | 国产成人精品日本亚洲语言 | 大陆黄色网 | 伊人天堂在线 | 欧美激情a∨在线视频播放 欧美激情二区 | 91久久精品都在这里 | 成人无遮挡肉动漫视频免费 | 日本vs欧美一区二区三区 | 一级成人毛片 | 欧美亚洲网站 | 在线日韩视频 | www.黄网站| 一区二区在线欧美日韩中文 | 国产97视频在线 | 久久免费香蕉视频 | 亚洲444444在线观看 | 在线成人看片 | 在线欧美a|