遅延バインディングの例
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/10/09 14:56 UTC 版)
「ダイナミックバインディング」の記事における「遅延バインディングの例」の解説
VB.NETにおける遅延バインディングの例を示す。 Option Strict OffClass SomeClass1 Public Sub SomeMethod Console.WriteLine("SomeClass1.SomeMethod() is called.") End SubEnd ClassClass SomeClass2 Public Sub SomeMethod Console.WriteLine("SomeClass2.SomeMethod() is called.") End SubEnd ClassPublic Class LateBindingExample Shared Sub CallSomeMethod(obj As Object) ' Option Strict On を指定するとコンパイルエラーになる。 obj.SomeMethod() End Sub Shared Function Main As Integer CallSomeMethod(New SomeClass1()) CallSomeMethod(New SomeClass2()) Return 0 End FunctionEnd Class VB.NETにおけるObject型は、.NETの基本クラス型System.Objectであり、あらゆる型の最上位基底クラスであるが、Object型自体には上記のSomeMethodという名前を持つメソッドは定義されていない。しかし、Option Strict Offを指定することで、コンパイル時にメソッドの存在有無を確認しなくなり、実行時に探索を試みる。これが遅延バインディングである。もし該当メソッドが見つからなかった場合、実行時に例外System.MissingMemberExceptionがスローされる。 なお、VB.NETのコンパイラでは、デフォルトでOption Strict Offとなっており、遅延バインディングが許可されている。
※この「遅延バインディングの例」の解説は、「ダイナミックバインディング」の解説の一部です。
「遅延バインディングの例」を含む「ダイナミックバインディング」の記事については、「ダイナミックバインディング」の概要を参照ください。
- 遅延バインディングの例のページへのリンク