static void Main(string[] args) { // 同名前空間 TestClass01 testClass01 = new TestClass01(); testClass01.member01 = "abc"; // 別名前空間 WCA2.TestClass02 testClass02 = new WCA2.TestClass02(); testClass02.member02 = "def"; // dll参照 // 静的メンバ TestClass03.member03 = "ghi"; // インスタンス生成 TestClass03 testClass03 = new TestClass03(); testClass03.member04 = "jkl"; // 表示 Console.WriteLine(testClass01.member01); Console.WriteLine(testClass02.member02); Console.WriteLine(TestClass03.member03); Console.WriteLine(testClass03.member04); Console.ReadKey(); }
static void Main(string[] args) { #region パターン01_静的メソッド /* * 単純に静的クラスの静的メソッドを呼び出す */ #if PATTERN01 // 静的クラスの静的メソッド使用 TestClass01.Test01(); #endif #endregion #region パターン02_動的メソッド /* * 動的クラスでも静的メソッドであれば * インスタンス化せずに呼び出すことが可能 */ #if PATTERN02 // 動的クラスの静的メソッド使用 TestClass02.Test02(); #endif #endregion #region パターン03_動的メソッドエラー #if PATTERN03 /* * エラーパターン * 動的クラスの動的メソッドをインスタンス化しないで * 使用しようとする */ // 動的クラスの動的メソッド使用 TestClass02.Test03(); #endif #endregion #region パターン04_動的メソッド /* * 動的クラスの動的メソッドを使用するにはインスタンス化が必須 */ #if PATTERN04 // 動的クラスインスタンス化 TestClass02 tearClass02 = new TestClass02(); // 動的クラスの動的メソッド使用 tearClass02.Test03(); #endif #endregion #region パターン05_動的メソッドエラー #if PATTERN05 /* * コンパイルエラーパターン * 静的メソッド内で動的変数を使用しようとする */ #endif #endregion #region パターン06_静的メソッド内動的変数 /* * 静的メソッド内で動的変数のを含むクラスのインスタンス化が * されていれば動的変数のメモリが確保されているため問題なく呼び出せる */ #if PATTERN06 // 動的クラスの動的メソッド使用 TestClass02.Test05(); #endif #endregion Console.ReadKey(); }