C# パーシャルクラスのサンプル

C#のパーシャルクラスのサンプルです。

目次

サンプル パーシャルクラス
パーシャルメソッド

パーシャルクラス

パーシャルクラスのサンプルです。

using System;

namespace Project1
{
    partial class Class1
    {
        public void write1()
        {
            Console.WriteLine("test1");
        }
    }
    partial class Class1
    {
        public void write2()
        {
            Console.WriteLine("test2");
        }
    }
    class Test1
    {
        static void Main()
        {
            Class1 c1 = new Class1();
            c1.write1(); //test1
            c1.write2(); //test2
        }
    }
}

5行目は、パーシャルクラスです。クラスの前にpartialがついています。
12行目もパーシャルクラスで、5行目と同じクラス名をしています。Class1というクラスを分割しています。
23行目は、Class1クラスのインスタンスを生成しています。
24,25行目は、分割したクラスのメソッドをそれぞれ実行しています。

 

パーシャルメソッド

  • メソッドの宣言とメソッドの処理内容を分けて記述できます。
    →C++の書き方と同じです。C++では、メソッドの宣言と処理内容を分けて記述します。
  • パーシャルクラス内でのみ使用できます。
  • アクセスレベルは、privateです。
  • 戻り値は、voidのみです。
  • 以下は、Microsoftのpartial (メソッド) (C# リファレンス)のリンクです。
    https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/keywords/partial-method

パーシャルメソッドのサンプルです。

using System;

namespace Project1
{
    partial class Class1
    {
        partial void Write1();
    }

    partial class Class1
    {
        partial void Write1()
        {
            Console.WriteLine("test1");
        }

        static void Main()
        {
            Class1 c1 = new Class1();
            c1.Write1(); //test1
        }
    }
}

7行目は、パーシャルメソッドで、メソッドの宣言をしています。
12行目もパーシャルメソッドで、7行目と同じメソッド名です。メソッドの処理内容を記述しています。
20行目で上記のメソッドを実行しています。

関連の記事

C#入門 クラスの仕組みとサンプル
C# コンストラクタのサンプル
C# クラスの継承の仕組みとサンプル</a

△上に戻る