準備
(なし)
デザイン
1. フォーム (Form1) にボタン (button1) を配置します。
2. フォーム (Form1) にリストボックス (listBox1) を配置します。
サンプルコード (C#)
// 名前空間の追加 // (なし) // クラスの宣言 public class TestClass1 { private int v1; public TestClass1(int v1) { this.v1 = v1; } public int TestFunc1() { return v1; } } // コード private void button1_Click(object sender, EventArgs e) { TestClass1 tc1 = new TestClass1(10); listBox1.Items.Add(tc1.TestFunc1()); }
解説
TestClass1 には、メンバー変数として v1 が定義されています。このメンバー変数を参照する方法は、状況に応じて違います。
まずコンストラクタの引数にも同じ名前の変数 v1 が設定されています。従ってコンストラクタ内で、メンバー変数を参照するには明示的な区別が必要です。そのためにインスタンス自身を表す this を使います。this.v1 はメンバー変数を表し、v1 はコンストラクタの引数を表します。
しかし、TestFunc1 のようにメソッドに同名の引数がない場合は、単に v1 と書くだけで、メンバー変数を表すことになります。
結果
動作確認環境
Visual Studio 2015 Professional (C# 6.0)