C#クラスの継承と親コントラクタの呼び出し方法 一例
2009/10/19 18:12Update
C#のクラス継承例(継承、親コントラクタの呼び出し方法)
例:
NUnitテストケース例:
実行結果:
using System;
using System.Collections.Generic;
using System.Text;
namespace Test
{
//親クラスとなる Aクラスの定義
class A
{
private string value;
//パラメータなしのコントラクタ定義
public A()
{
System.Console.WriteLine("A().");
this.value = "****";
}
//パラメータありのコントラクタ定義
public A(string value)
{
System.Console.WriteLine("A(string).");
this.value = value;
}
//メソッド定義
public void Do()
{
System.Console.WriteLine("A.Do().");
}
}
//サブクラスとなる Bクラスの定義
class B:A
{
//親コンストラクタの呼び出す
public B()
: base()
{
System.Console.WriteLine("B().");
}
//親コンストラクタの呼び出す(パラメータあり)
public B(string value)
: base(value)
{
System.Console.WriteLine("B(string).");
}
}
}
NUnitテストケース例:
using NUnit.Framework;
namespace Test
{
[TestFixture]
public class TestExtends
{
[Test]
public void Extends()
{
B b1 = new B();
b1.Do();
B b2 = new B("TEST");
b2.Do();
}
}
}
実行結果:
A().
B().
A.Do().
A(string).
B(string).
A.Do().
B().
A.Do().
A(string).
B(string).
A.Do().
Sponsored Link
- Relative Articles
- JLCA で JavaコードをC#に変換する - (2009/10/14 15:28)
- Console.Out.WriteLineでコンソールで出力する - (2009/10/15 16:09)
- typeofによる 型(System.Type)の取得 - (2009/10/15 16:58)
- サンプルから学ぶ C# クラスの定義方法 - (2009/10/21 16:36)
- C#言語でのThreadLocal実装方法 - (2009/10/23 17:18)
- カスタムユーザコンポーネントWindowsControlLibraryの作成とその利用方法 - (2009/11/09 13:39)
- C# クラスにカスタム・イベントの実装 - (2009/11/10 18:19)
- C# オブジェクトの型の判定 - (2009/11/11 16:22)
- C# ジェネリック(generic)実装例 - (2009/11/24 18:37)
- C#イベントログの汎用実装 一例 - (2009/12/02 17:49)