1

私は小さなコードを持っています

public void StartConnection(){
  _connection = new DatabaseConnection();
}

public Results ExecuteQuery( string format ){
  _queryExecuter.SetText = string.Format(_queryString, format);

  return _queryExecuter.Execute();
}

私がしたことは、パブリックメソッド内でプライベートメンバーを使用することを許可しましたか?

パブリックメソッドは別のクラスで使用されることを述べました(異なるプロジェクトからの同じソリューションで)。

または、プライベートメソッドを作成し、プライベート変数内で使用する必要がありますか?

アドバイスが必要です。

ありがとうございました

4

2 に答える 2

9

はい、カプセル化と呼ばれる非常に基本的なプログラミング哲学です。その完全に有効であり、そうすることをお勧めします。あなたの場合、あなただけがあなたの接続オブジェクトを使用する方法を知っていて、あなたのパブリックメソッドを介してそれを使用する方法を「制限」し、それによってあなたのアプリケーションをあなたの定義された範囲に保ちます。

于 2012-08-03T09:17:42.283 に答える
2

私がしたことは、パブリックメソッド内でプライベートメンバーを使用することを許可しましたか?

はい、パブリックメンバー内でプライベートメンバーを絶対に使用できます。そうでなければ、彼らはかなり役に立たないでしょう!(他のプライベートメンバー内でのみプライベートメンバーを使用できる場合、どのようにしてそれらのいずれかを使用できますか?)

カプセル化のポイントの多くは、パブリックAPIから実装の詳細(プライベートメンバー)を非表示にすることです。

于 2012-08-03T09:18:18.297 に答える