C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#のクラスとは?基本構文からサンプルコードまで徹底解説

C#におけるクラスとは、データ型の「設計図(ブループリント)」に相当するものです。クラスをもとに生成された実体をオブジェクトと呼び、オブジェクトはクラスのインスタンスであるといえます。また、クラスを構成するメソッドや変数は、まとめてクラスのメンバーと呼ばれます。

クラスの一般的な定義形式

C#でクラスを定義する際の一般的な書式は以下のとおりです。

<アクセス修飾子> class クラス名 {
    // メンバー変数
    <アクセス修飾子> <データ型> 変数1;
    <アクセス修飾子> <データ型> 変数2;
    ...
    <アクセス修飾子> <データ型> 変数N;

    // メンバーメソッド
    <アクセス修飾子> <戻り値の型> メソッド1(パラメーターリスト) {
        // メソッド本体
    }
    <アクセス修飾子> <戻り値の型> メソッド2(パラメーターリスト) {
        // メソッド本体
    }
    ...
}

このように、クラスにはデータを保持するフィールド(メンバー変数)と、処理を行うメソッドを定義できます。アクセス修飾子には publicprivate などがあり、メンバーへのアクセス範囲を制御します。

C#でクラスを作成するサンプルコード

それでは、実際にC#でクラスを作成し、利用する例を見てみましょう。ここでは「箱(Box)」を表すクラスを定義し、2つの箱の体積を計算して表示します。

サンプルプログラム

using System;

namespace Demo {
    class Box {
        public double length;  // 箱の長さ
        public double breadth; // 箱の幅
        public double height;  // 箱の高さ
    }

    class Boxtester {
        static void Main(string[] args) {
            Box Box1 = new Box(); // Box型のBox1を宣言
            Box Box2 = new Box(); // Box型のBox2を宣言
            double volume = 0.0;  // 箱の体積を格納する変数

            // Box1 のサイズ設定
            Box1.height = 5.0;
            Box1.length = 6.0;
            Box1.breadth = 7.0;

            // Box2 のサイズ設定
            Box2.height = 10.0;
            Box2.length = 12.0;
            Box2.breadth = 13.0;

            // Box1 の体積を計算
            volume = Box1.height * Box1.length * Box1.breadth;
            Console.WriteLine("Volume of Box1 : {0}", volume);

            // Box2 の体積を計算
            volume = Box2.height * Box2.length * Box2.breadth;
            Console.WriteLine("Volume of Box2 : {0}", volume);
            Console.ReadKey();
        }
    }
}

実行結果

Volume of Box1 : 210
Volume of Box2 : 1560

コードのポイント解説

  • new演算子によるインスタンス化: new Box() を使うことで、Boxクラスの新しいオブジェクト(インスタンス)をメモリ上に生成しています。
  • メンバー変数へのアクセス: ドット演算子(.)を使い、Box1.height のように各オブジェクトのフィールドへ値を代入・参照できます。
  • 同じクラスから複数のオブジェクト: Box1 と Box2 は同じBoxクラスから作られた独立したインスタンスであり、それぞれ異なる値を持てます。
  • 体積の計算: 高さ × 長さ × 幅を掛け合わせることで、各箱の体積を求めています。

このように、クラスを定義しておけば、同じ構造を持つ複数のオブジェクトを簡単に作成・管理でき、コードの再利用性と保守性が大きく向上します。C#のオブジェクト指向プログラミングにおいて、クラスは最も基本的かつ重要な概念です。

  1. C#のConsoleクラスとは?主要プロパティの使い方を実例付きで解説

    C#のConsoleクラスは、コンソールアプリケーションにおける標準入力・標準出力・標準エラー出力の各ストリームを表すクラスです。テキストの表示や入力の読み取りだけでなく、文字色や背景色の変更、カーソル位置やサイズの制御など、コンソール操作に関するさまざまな機能が提供されています。ここでは、Consoleクラスの代表的なプロパティの使い方を、サンプルコードと実行結果とあわせて解説します。Console.CursorLeftプロパティコンソール上のカーソル位置(左端から数えた列位置)を変更するには、Console.CursorLeftプロパティを使用します。サンプルコードusing System

  2. C#のクラスにおけるメンバー関数とは?定義方法と使い方を実例で解説

    メンバー関数とはクラスのメンバー関数(メソッド)とは、クラス定義の中でその定義やプロトタイプ(宣言)が記述される関数のことです。変数と同様にクラス内に宣言され、そのクラスのオブジェクトに対して操作を行います。また、そのオブジェクトが持つすべてのメンバー(フィールドやプロパティなど)にアクセスすることができます。以下は、メンバー関数の定義例です。public void setLength(double len) { length = len; } public void setBreadth(double bre) { breadth = bre; }C#でのメンバー関数へのアク