プロパティを使用して、単一の文字列name
をクラスに追加できるようDetails
にしています。プロパティは、2 つの部分に分割できる場合にのみ文字列を受け入れるようにします。
2 つの部分は とfirstName
ですLastName
。ただし、結果の分割の配列に 1,0 個または 2 個を超える文字列が含まれている場合、入力は無効と見なされ、最初にプロパティを呼び出したコードにエラーをスローしたいと考えています。
このようなプロパティでエラー処理を行うことはできますか?
そうでない場合、正確性をチェックしながらクラスにデータを取得するための推奨される方法は次のうちどれですか。
- クラス内のメソッドを使用して
Details
エラー入力を処理し、そのメソッドを作成しboolean
ます。 - プロパティの使用を続行しますが、プロパティを呼び出すコードによってエラー チェックが行われます。すべてのエラー チェック コードをクラス内で自己完結型にしたいので、これは好きではありません
Details
。
.
class Details
{
private string firstName, lastName;
public string Name
{
// name
get { return firstName + " " + lastName; }
set
{
string name = value;
string[] nameArray = name.Split(' ');
firstName = nameArray[0];
lastName = nameArray[1];
}
}
}
編集:私は主に、3つのオプションのどれがベストプラクティスと考えられているかに興味があります:
- プロパティ内のエラー チェック。
- 別のクラスのクラス外でエラーをチェックし、検証済みの入力をに追加するだけです
Details
boolean
内部のメソッドを使用してDetails
、入力を検証します。