外部インタフェース/API    

Javaオブジェクトのメソッドの実行

本節は、MATLABでのオブジェクトのメソッドの実行方法を説明します。また、利用するメソッドに関する情報の取得方法やMATLABがどのように非標準の状況のタイプを扱うかについても説明します。

本節は、以下のトピックスを説明します。

JavaおよびMATLABの呼び出しのシンタックスの使用法

Javaオブジェクトにおいてメソッドを呼び出すには、Javaのシンタックスを利用します。

つぎの例では、frameは上記で作成されたjava.awt.Frameオブジェクトで、getTitlesetTitleはそのオブジェクトのメソッドです。

あるいは、MATLABのシンタックスを使ってJavaオブジェクト(非スタティック)メソッドを呼び出すことができます。

MATLABシンタックスでは、上記のjava.awt.Frameの例題はつぎのようになります。

本章のすべてのプログラミングの例題は、Javaオブジェクトメソッドの呼び出しを含みます。たとえば、「URLの読み込み」のコードは、MATLABシンタックスを使ったjava.net.URLオブジェクトurlに対するopenStreamメソッドの呼び出しを含みます。

他の例題では、「Phone Bookの作成と利用」のコードは、Javaシンタックスを使った、java.utils.Propertiesオブジェクトpb_htableに対するloadメソッドの呼び出しを含みます。

非スタティックメソッドに対してjavaMethod関数を利用

ある状況下では、javaMethod関数を使ってJavaメソッドを呼び出す必要がある場合があります。つぎのシンタックスは、x1,...,xnに一致する引数リストを使って、method_name,メソッドをJavaオブジェクトJについて呼び出します。これは、値Xを出力します。

たとえば、1つの引数を渡してjava.lang.StringオブジェクトについてstartsWithメソッドを呼び出すには、以下を使います。

javaMethod関数を使って、以下のことが行えます。

31文字よりも長い名前を持つメソッドを呼び出す唯一の方法は、javaMethodを使うことです。「JavaとMATLABの呼び出しシンタックス」で説明されているJavaとMATLABの呼び出しシンタックスは、この長さのメソッド名を扱えません。

javaMethodを使って、実行時に呼び出されるメソッドを指定することもできます。この状況で、ユーザコードは、メソッド名引数の代わりに文字列変数を使ってjavaMethodを呼び出します。javaMethodを使ってスタティックメソッドを呼び出すとき、クラス名引数の代わりに文字列変数を使うこともできます。


 オブジェクトのクラスの決定 Javaクラスに対するスタティックメソッドの呼び出し