2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

C#のクラスにつけられるキーワード

Last updated at Posted at 2020-03-22
キーワード 役割
abstract 抽象クラスであることの宣言
sealed 継承の禁止
partial クラスの分割定義

abstract

抽象クラスになり、直接のインスタンス化の禁止。

abstract_sample.cs
abstract class MyAb
{
    // Hanbetsuメソッドは抽象メソッド
    public abstract double Hanbetsu(double a, double b, double c);
}

class MyHanbetsu: MyAb
{
    // 基本クラスの抽象メソッドは必ずオーバーライドする
    public override double Hanbetsu(double a, double b, double c)
    {
        return Math.Pow(b, 2.0) - 4.0 * a * c;
    }
}
  • abstractクラスにメソッドの実装は可能

sealed

継承を禁止したい場合は、sealed キーワードを付ける

sealed_sample.cs
sealed class MyClass
{
}

partial

クラスの定義内容を機能毎に分割して、それぞれ別のファイルとして保存できる

partial1.cs
using System;

partial class MyClass
{
    public int x;
}

class Partial01
{
    public static void Main()
    {
        MyClass mc = new MyClass();
        mc.x = 10;
        mc.Show();
    }
}
partial2.cs
using System;

partial class MyClass
{
    public void Show()
    {
        Console.WriteLine("x = {0}", x);
    }
}

以下でコンパイルする

terminal
csc partial1.cs partial2.cs
2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?