.NETプログラマー早期育成ドリル
VB編
付録 文法早見表
本資料は、「UUM01W:.NETプログラマー早期育成ドリル VB編 コードリーディング」もしくは 「UUM02W:.NETプログラマー早期育成ドリル VB編 コードライティング」を
VBプログラミング 文法早見表
■名前空間の定義 Namespace 名前空間名 [対象の名前空間に定義する処理を記述] End Namespace ■コメント '(シングルクォーテーション) ■変数の定義 Dim 変数名[As データ型][= 初期値] ■キャストによる型変換 CType(式,データ型) ■Parse メソッドによる数値型への変換 データ型.Parse(String型のデータ) ■ToString メソッドによる文字列型への変換 数値型データ.ToString() ■1 次元配列の定義(初期値なし)Dim 配列名(最大Index番号) [As データ型] ■1 次元配列の定義(初期値あり) Dim 配列名() [As データ型] = {初期値1, 初期値2, ・・・・} ■連結演算子 +,& ■算術演算子 +,-,*,/,¥,Mod ■比較演算子 =,<>,<,>,<=,>= ■代入演算子 =,+=,-=,*=,/= ■論理演算子 And,Or,Not,AndAlso,OrElse ■If文(単分岐) If 条件式 Then [処理] End If ■If文(二分岐) If 条件式 Then [処理1] Else [処理2] End If ■If文(多分岐) If 条件式1 Then [処理1] ElseIf 条件式2 Then [処理2] ElseIf 条件式3 Then [処理3] Else [処理n] End If ■Select 文 Select Case 式 Case 値1 [処理1] Case 値2 [処理2] … Case Else [処理n] End Select ■Do While 文(前判定) Do While 条件式 [処理] [Exit Do] [Continue Do] Loop ■Do Until 文(前判定) Do Until 条件式 [処理] [Exit Do] [Continue Do] Loop <基本文法> ■List(動的配列)の定義
■For Each 文
For Each 反復変数 [As データ型] In コレクション [各要素に対して実行する処理] [Exit For] [Continue For] Next [反復変数] ■クラスの定義 [アクセス修飾子] Class クラス名 [フィールド、メソッドなどの定義] End Class ■フィールドの定義 アクセス修飾子 フィールド名 [As データ型] [= 初期値] ■自動実装プロパティの定義 [アクセス修飾子] Property プロパティ名 As データ型 [= 初期値] ■プロパティの定義
[アクセス修飾子] [ReadOnly|WriteOnly] Property プロパティ名() [As データ型] [アクセス修飾子] Get Return フィールド名 End Get [アクセス修飾子] Set(value As データ型) [処理] [フィールド名 = value] End Set End Property ■For 文
For カウンタ変数 [As データ型] = 初期値 To 上限値 [Step 1回分の増分値] [処理] [Exit For] [Continue For] [処理] Next [カウンタ変数] <クラスの定義> ■Sub メソッドの定義 [アクセス修飾子] Sub メソッド名 ([引数リスト]) [処理] [Exit Sub] End Sub ■ Function メソッドの定義 [アクセス修飾子] Function メソッド名 ([引数リスト]) [As データ型] [処理] Return 戻り値 [Exit Function] End Function ■コンストラクターの定義 Public Sub New([引数リスト])
[初期化処理] End Sub
■静的メソッドの定義 ※Function メソッド、プロパティ、コンストラクターも同様。 [アクセス修飾子] Shared Sub メソッド名([引数リスト]) [処理] End Sub ■静的フィールドの定義 [アクセス修飾子] Shared フィールド名 [As データ型] [= 初期値] <クラスの定義>(派生クラスの場合) ■派生クラスの定義 [アクセス修飾子] Class クラス名 Inherits クラス名 [差分のフィールド、プロパティ、メソッドなどの定義] End Class ■派生クラスにおけるコンストラクターの定義 Public Sub New([引数リスト])
[MyBase.New([基本クラスのコンストラクターへ受け渡す引数リスト])] [初期化処理] End Sub ■メソッドのオーバーライドの実装 基本クラスの書式 ※Functionメソッド、プロパティも同様。 [アクセス修飾子] Overridable Sub メソッド名([引数リスト]) [処理] End Sub 派生クラスの書式 ※Functionメソッド、プロパティも同様。 [アクセス修飾子] Overrides Sub メソッド名([引数リスト]) [処理] End Sub <クラスの定義>(抽象クラスの場合) ■抽象クラスの定義 ※Functionメソッド、プロパティも同様。 [アクセス修飾子] MustInherit Class クラス名 [アクセス修飾子] MustOverride Sub メソッド名([引数リスト]) [通常のフィールド、プロパティ、メソッドなどの処理] End Class ■インターフェイスの定義 ※Functionメソッド、プロパティも同様。 [アクセス修飾子] Interface インターフェイス名 Sub メソッド名([引数リスト]) End Interface <インターフェイスの定義> ■インターフェイスの実装 ※Functionメソッド、プロパティも同様。 [アクセス修飾子] Class クラス名 Implements インターフェイス名[, インターフェイス名, …] [アクセス修飾子] Sub メソッド名([引数リスト]) Implements インターフェイス名.メソッド名 [処理] End Sub End Class
■例外処理の定義 Try [エラーが起こる可能性のある処理] Catch [変数名 As 例外の型] [例外処理] Finally [例外の有無にかかわらず実行する処理] End Try ■自作例外の定義 Public Class 例外名 Inherits Exception [コンストラクターの定義など] End Class ■例外のスロー Throw New 例外名([引数リスト]) ■例外の再スロー Throw [例外オブジェクト] ■インスタンスの生成 書式1 :アクセス修飾子 オブジェクト変数名 As クラス名 オブジェクト変数名 = New クラス名([引数リスト]) 書式2 :アクセス修飾子 オブジェクト変数名 As New クラス名([引数リスト]) 書式3 :アクセス修飾子 オブジェクト変数名 [As クラス名] = New クラス名([引数リスト]) ■Set アクセサーの呼び出し(値を設定) オブジェクト変数名.プロパティ名 = 値 ■Get アクセサーの呼び出し(値を取得) 変数名 = オブジェクト変数名.プロパティ名 ■Sub メソッドの呼び出し [Call] オブジェクト変数名.メソッド名([引数リスト]) ■Function メソッドの呼び出し [変数名 =] オブジェクト変数名.メソッド名([引数リスト]) ■静的フィールドへのアクセス クラス名.フィールド名 ■静的メソッドへのアクセス クラス名.メソッド名([引数リスト]) <インスタンスの生成> <インスタンスの利用> <例外処理>