如果一個類有一個構造函數,它將一些值對象作爲參數,並依靠它來進行初始化。如果此對象爲空,它應該如何反應?給定無效參數時,構造函數應該如何處理?
class SomeClass
{
private SomeData _data;
public SomeClass(SomeValueObject obj)
{
_data = obj.Data;
}
}
這是一個例子,但一般:應該如何構造的行爲如果給定參數無效,因此不能做好這方面的建設?它應該只是返回而不進行任何初始化?將參數設置爲某些默認值?拋出異常?還有別的嗎?
我敢肯定,這個問題的答案是「這取決於」,但是否有任何的最佳做法等?
我肯定會採用這種例外的方法。這是最簡單的方法。 – hurikhan77 2010-01-29 22:28:31
我支持這個。讓對象處於某種未定義的狀態確實沒有多大價值。 – stiank81 2010-01-30 06:49:35