當前位置:編程學習大全網 - 源碼下載 - 在實體類的set方法裏對他作出約束不滿足時拋出異常的這種做法好嗎,好在哪裏,不好再哪裏。

在實體類的set方法裏對他作出約束不滿足時拋出異常的這種做法好嗎,好在哪裏,不好再哪裏。

這種作法基本上來說是不錯的。主要是實現編譯態下的例外拋出,但不可使用try結構,壹但使用則成為運行態了,那樣的話就沒有必要這樣作了!如果以前代碼:

public class classname

{

private string number;

//some other protypes;

public string Number

{

set{

if(value.startwith("0"))

{ throw new exception("錯誤提示");}

number = value;

}

}

//some others

}

這樣寫就比較合適,妳可寫代碼時,如果寫上了

classname instance = new classname();

instance.Number = '0121456456';

那麽此時就會直接拋出自定例外。因這我們在這還沒有進行編譯,所以程序員很容易找到這種錯誤,並且將錯誤改正。

public string Number

{

set{

try

{

//something to do

number = value;

}catch(exception e)

{ throw e ;}

}

}

//some others

}

//這種寫法就不合適了,當程序員壹樣在調用時,並不能當即發現錯誤,編譯時也不能出現錯誤,直到運行時,程序才發現錯誤,這種寫法很明顯是不好的。原因就在於錯誤本來能早發現的,卻沒有及早地發現。

  • 上一篇:請問二代I7處理器能支持OpenGL嗎?
  • 下一篇:中興天機7錄音好不好
  • copyright 2024編程學習大全網