継承とは?
継承というのは、オブジェクト指向言語の代表的な機能の1つですが、一言でいうと、「とあるクラスのフル機能をすべてもらう」というイメージになります。
書き方
書き方はclassキーワードに続けてクラス名、そのあとにコロンでつないで継承したいクラス名を記述します。
(例)Itemクラスを継承する場合
class xxxx : Item
{}
注意点
C#では多重継承は禁止されているため、複数のクラスを継承することはできません。継承できるクラスは1つです。ちなみに、インタフェースであれば複数を指定することが可能です。
名称の呼び方
継承関係には親子関係が存在します。オブジェクト指向の世界では、親にあたる継承されるクラスの事を「基底クラス」(スーパークラス)と呼び、子供にあたる、継承する側のクラスの事を「派生クラス」(サブクラス)と呼んでいます。
派生クラスからの使い方
派生クラスから基底クラスの機能を使う場合は、baseキーワードを使うことで、使用可能な機能をインテリセンスで表示することができます。
派生クラスのコンストラクタ
基底クラスに引数付きのコンストラクタがある場合は、派生クラスから、基底クラスのコンストラクタをbaseキーワードを使用して、派生クラスのコンストラクタから呼び出す必要があります。
サンプルコード
namespace CS26 { //親:スーパークラス(基底クラス) class A1 { private int _privateValue; protected int ProtectedValue; public A1(int value) { _privateValue = value; } public int GetData() { return 1; } } }
namespace CS26 { //書き方 //多重継承禁止 //子:サブクラス(派生クラス) class A2 : A1 { //派生クラスのコンストラクタから基底クラスのコンストラクタを呼び出して初期化する public A2(int value) : base(value) { //派生クラスからはbaseキーワードで基底クラスの機能を使う base.ProtectedValue = 3; } } }
namespace CS26 { public partial class Form1 : Form { public Form1() { InitializeComponent(); //あるクラスの機能をすべてもらう var a2 = new A2(3); a2.GetData(); } } }
- C#初心者のための基礎!C#文法2割の知識で8割の仕事をする方法!#1
- C#初心者のための基礎!ブロックと名前空間とクラスとメソッドを解説#2
- C#初心者のための基礎!#3値の扱い方。変数と定数をわかりやすく解説!
- C#初心者のための基礎!データ型の種類と使い分けをわかりやすく解説#4
- C#初心者のための基礎!値型と参照型の違いと使い方をわかりやすく解説#5
- C#初心者のための基礎!データ型の変換のやり方をわかりやすく解説#6
- C#初心者のための基礎!配列の使い方をわかりやすく解説#7
- C#初心者のための基礎!動的配列List<T>の使い方をわかりやすく解説#8
- C#初心者のための基礎!演算子の使い方をわかりやすく解説#9
- C#初心者のための基礎!if文とswich文の使い方をわかりやすく解説#10
- C#初心者のための基礎!while文の書き方と使い方をわかりやすく解説#11
- C#初心者のための基礎!do-While文の書き方と使い方をわかりやすく解説#12
- C#初心者のための基礎!for文の書き方と使い方をわかりやすく解説#13
- C#初心者のための基礎!foreach文の書き方と使い方をわかりやすく解説#14
- C#初心者のための基礎!オブジェクト指向の意味をわかりやすく解説#15
- C#初心者のための基礎!クラスの意味と使い方をわかりやすく解説#16
- C#初心者のための基礎!コンストラクタの意味と使い方をわかりやすく解説#17
- C#初心者のための基礎!アクセス修飾子の意味と使い方をわかりやすく解説#18
- C#初心者のための基礎!メソッドの意味と使い方をわかりやすく解説#19
- C#初心者のための基礎!フィールドの意味と使い方をわかりやすく解説#20
- C#初心者のための基礎!インスタンスの意味と使い方をわかりやすく解説#21
- C#初心者のための基礎!カプセル化の意味と使い方をわかりやすく解説#22
- C#初心者のための基礎!プロパティの意味と使い方をわかりやすく解説#23
- C#初心者のための基礎!Disposeとusingの意味と使い方を解説#24
- C#初心者のための基礎!staticスタティックの意味と使い方を解説#25
- C#初心者のための基礎!継承の意味と使い方をわかりやすく解説#26
- C#初心者のための基礎!override(オーバーライド)の使い方を解説#27
- C#初心者のための基礎!ポリモーフィズムとインタフェースの使い方を解説#28
- C#初心者のための基礎!ポリモーフィズムと抽象クラスの使い方を解説#29
- C#初心者のための基礎!例外Exceptionの意味と使い方をわかりやすく解説#30