MATLAB Function Reference | ![]() ![]() |
表示
J = javaObject('class_name',x1,...,xn)
詳細
javaObject('class_name',x1,...,xn)
は、x1,...,xn
と一致する引数リストと共に、クラス 'class_name
' に対する Java コンストラクタを起動し、新しいオブジェクトを出力します。
javaObject
に渡すクラス名や引数リストに一致するコンストラクタが存在しない場合、エラーが生じます。
注意
関数 javaObject
を使って、つぎのことが可能になります。
デフォルトの MATLAB コンストラクタのシンタックスは、入力クラスのセグメントが、31個のキャラクタよりも長くないことを条件としています(name segment は、ピリオドでセグメントを表し、その前、途中、後のいずれもクラス名の一部になります。たとえば、クラス java.lang.String
の中に3つのセグメントがあります)。31個のキャラクタよりも長い名前のクラス名のセグメントは、MATLAB では打ち切られます。この長さのクラス名を使用する必要がある場合がまれにありますが、クラスを初期化する前に、javaObject
を使用する必要があります。
関数 javaObject
は、実行時に作成されるオブジェクトに対する Java クラスを指定するものです。この考えで、クラス名を引数とする位置に文字変数を使って、javaObject
をコールします。
class = 'java.lang.String'; text = 'hello'; strObj = javaObject(class, text);
通常、起因するクラスが開発時に既知の場合、MATLAB コンストラクタシンタックスを使うことは便利です。たとえば、java.lang.String
オブジェクトを作成するには、つぎのようにします。
strObj = java.lang.String('hello');
注意
一般的には、javaObject を使う必要がありません。Java メソッドを起動するデフォルトの MATLAB シンタックスは、幾分簡素化されており、多くのアプリケーションに対して好まれるものです。上で記述した2つのクラスに対して、基本的には、javaObject を使います。
|
例題
つぎの例題は、クラス java.lang.String
の Java オブジェクトを作成し、出力します。
strObj = javaObject('java.lang.String','hello')
参考
javaArray
, javaMethod
, import
, methods
, fieldnames
, isjava
![]() | javaMethod | keyboard | ![]() |