2011-07-10 2 views
0

私はプライベートメソッドを作成します、異なる入力データで、それは異なって動作します。このコードはカプセル化の例ですか?

private void SetSelectedRouters(bool isSelected) 
{ 
    for (int i = 0; i < m_listPlatforms.Count; i++) 
    { 
      m_listPlatforms[i].IsCheked = isSelected; 
    } 
} 

相互作用のためのパブリックメソッドを作成します。

public void SelectedAllRouters() 
{ 
    SetSelectedRouters(true); 
} 
public void SelectedNoneRouters() 
{ 
    SetSelectedRouters(false); 
} 

これはカプセル化、または別の名前のものだと思いますか?

答えて

2

これはカプセル化ではありません。それはextracted methodです。このメソッドのコードはすべて互いに関連しており、その目的はその名前で明確に記述されています。これはhelper methodとも呼ばれます。

3

コードの再利用が多く、2つのメソッドの共通の機能を抽出して、簡単な方法で簡単に共通メソッドを呼び出すことができます。

(私は方法によって、さらに読みやすくするためにforeachを使用することをお勧めしたい。)

+0

(第二の点を調べることで)はいそうです、そう明確なタイトルはありますか? – Mediator

1

ウィキペディアは、特許請求の範囲:

1. A:[2]そのプログラミング言語のカプセル化で

は二つの関連するが別個の概念のいずれかに言及するために使用され、時には組み合わせ[1]オブジェクトのコンポーネントのいくつかへのアクセスを制限するための言語メカニズムです。

2.そのデータで動作するメソッド(または他の関数)とのデータのバンドルを容易にする言語構造。

だから私には私は理解していない

関連する問題