Visual Basic 入門

クラスとは

LinkedInラーニングの無料トライアルを今すぐ試そう

無料で視聴する すべての加入プランを見る
このレッスンでは、デストラクタや継承などと言った点で構造体よりさらに高度な機能を持つ、クラスについて説明します。
04:57

字幕

このレッスンでは、デストラクターや継承などといった点で構造体よりさらに高度な機能を持つ、クラスについて説明します。クラスは構造体と同様に複数の基本データ型や複合データ型を組み合わせて定義することができる、複合データ型です。しかし構造体とは違って、参照型となっている所が最も大きな違いです。クラスは構造体と同じく、フィールド、メソッド、プロパティおよびコンストラクターを宣言することができますがそれ以外にも実体が消去される時に呼ばれるデストラクターや基本クラスの機能を引き継ぐことのできる継承という機能を利用する事ができます。ではまずはクラスの定義方法とフィールド、プロパティ、メソッドについて見ていきましょう。クラスを定義するには、Class Class 名そして End Classのような形で定義を行ないます。クラスを使う場合に関しても、構造体と同様にしてDim 変数名 As クラス名、もしくはDim 変数名 As New クラス名( )もしくは Dim 変数名 = New クラス名( )のように宣言を行なうことができます。しかしこの中で一番上のものだけはそのままでは使えません。これはクラスは参照型であり、一番上の例はあくまで変数を確保しただけであって、参照先の実体を確保していないためです。 そのためこの後にクラスの実体を代入するか、もしくは下2つの方法を使うようにしましょう。ではクラスへフィールド、プロパティ、メソッドを実装していきましょう。これらの実装方法は、構造体と同様にしてこのような形で実装を行なう事ができます。まず5行目はフィールドの定義を行なっています。そして7行目および9行目から 17 行目まではプロパティの定義を行なっています。特に7行目では Property プロパティ名、As 型となっているのに対して10 行目ではその後に Get ブロックとSet ブロックが来ています。7行目では Get ブロック、Set ブロックを自動実装しているのに対して、9行目以降では、Get ブロック、Set ブロックをコードによって記述しています。これによりクラスの中では Integer 型のAge というものを持っていますが、クラスの外には String 型として公開する、ということができるようになります。なおこの7行目のような書き方を自動実装プロパティと呼びます。それではこのクラスにコンストラクターを定義してみましょう。コンストラクターの定義は構造体と同じく、Sub New そして取り得る引数を書いていきます。 しかし構造体と違う所は幾つかあります。1つ目は引数ありのコンストラクターのみを定義すると、宣言時に必ず引数をわたさなければならないという点です。構造体は必ず自動的に暗黙のコンストラクターが定義できますがクラスではコンストラクターをコードによって指定した場合、その暗黙のコンストラクターは使われなくなります。よってコンストラクターを宣言することでそのクラスの使用方法を制限することができます。また2つ目に違う点は、引数なしのコンストラクターを宣言できるという点です。構造体では引数なしのコンストラクターを宣言すると、エラーとなりますがクラスでは引数なしのコンストラクターの定義を行なうこともできます。またこのようにコンストラクターが複数ある場合、その引数によって呼び出すコンストラクターを変えてくれます。つまりこの Person クラスの実体を確保する時に、その時に引数をわたすことで、これは 23 行目の Sub New の箇所が呼ばれ何も引数をわたさない時、これは 26 行目からの Sub New が呼ばれるようになります。では最後に、実体が消去する時に呼ばれるデストラクターを定義してみましょう。 デストラクターはProtected Overrides Sub Finalizeという形で定義を行ないます。この中に実体が消去される際、行なうべき行動を書いておくといいでしょう。しかしこのデストラクターを呼び出すタイミングは必ずしもコードによって制御できるというわけではありません。そこでよく使われているのがアイディスポーザブル、という知識だけは覚えておきましょう。このレッスンでは、デストラクターや継承などといった点で構造体よりさらに高度な機能を持つ、クラスについて説明しました。

Visual Basic 入門

Visual Basicはプログラミング初心者にも比較的親しみやすい構文を採用したプログラミング言語です。従来のデスクトップアプリから最新フレームワークを用いたアプリまで、簡単に幅広く開発できます。このコースでは基本的な文法やクラス・名前空間などのより高度な機能、LINQなどVisual Basicを使ううえで必要な知識をひと通り学びます。

2時間53分 (43 ビデオ)
現在、カスタマーレビューはありません…
ソフトウェア・トピック
Visual Basic Visual Basic 2015
プラン加入者限定
発売日:2017年01月03日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。