javaMethod

Описание

пример

javaMethod(MethodName,JavaObj,x1,...,xN) вызывает метод в классе Java® объектный массив с сигнатурой, соответствующей аргументам x1,...,xN. Использовать javaMethod вызывать методы, имена которых превышают максимальную длину MATLAB® идентификатор. Этот подход является единственным способом вызова такого метода в MATLAB. Чтобы получить максимальную длину идентификатора, вызовите namelengthmax функция.

В целом синтаксис MATLAB используется для вызова методов для объектов Java.

method(object,arg1,...,argn)

Также используйте синтаксис Java.

object.method(arg1,...,argn)

пример

javaMethod(StaticMethodName,ClassName,x1,...,xN) вызывает статический метод в ClassName классов.

В целом синтаксис MATLAB используется для вызова статических методов для объектов Java.

class.method(arg1,...,argn)

Примеры

свернуть все

Создайте java.util.Date myDate объекта и смените месяц на апрель. Из документации на Java "A month представлен целым числом от 0 до 11; 0 - январь, 1 - февраль и так далее ". Поэтому числовое значение для April 3.

myDate = java.util.Date;
javaMethod('setMonth',myDate,3)

Функции java.lang.Double статический метод isNaN для тестирования переменной num. Начиная с num содержит номер, сообщение не отображается.

num = 2.2;
if javaMethod('isNaN','java.lang.Double',num)
    disp('This is not a number')
end

Поиск текстового шаблона в строке с помощью переменных для шаблона и метода поиска. Эти переменные могут быть установлены во время выполнения из пользовательского ввода.

Выберите метод, startsWith, и идентифицируйте шаблон, str.

fnc = 'startsWith';
str = java.lang.String('Four score');

Идентифицируйте текст для поиска.

gAddress = java.lang.String('Four score and seven years ago');

Поиск по gAddress для шаблона.

javaMethod(fnc,gAddress,str)
ans = logical
   1

gAddress начинается со слов Four score.

Вызовите конструктор или статический метод во внутреннем классе. В javaMethod и javaObject functions, задайте имя класса, используя $ символ, как OuterClass$InnerClass.

Например, предположим, что com.ams.MyClass классов содержит MyInnerClass классов со статическим методом methodname. В Java синтаксис вызова:

out = com.ams.MyClass.MyInnerClass.methodname(arg);

В MATLAB введите:

out = javaMethod('methodname','com.ams.MyClass$MyInnerClass',arg)

Входные параметры

свернуть все

Нестатическое имя метода Java, заданное как строковый или символьный вектор.

Пример: javaMethod('DataDefinitionAndDataManipulationTransactions',T)

Типы данных: char | string

Массив, заданный как объект Java класса, содержащего метод.

Входные параметры с 1 по N (при наличии), требуемые MethodName или StaticMethodName, заданный любым типом. Список аргументов метода задает тип аргумента.

Статическое имя метода Java, заданное как строковый или символьный вектор.

Пример: java.lang.Double.isNaN(2.2)

Типы данных: char | string

Имя класса Java, заданное как строковый или символьный вектор, содержащий StaticMethodName.

Типы данных: char | string

Совет

  • Использовать javaMethod чтобы задать имя метода как переменную, которая будет вызываться во время выполнения. При вызове статического метода можно также использовать переменную вместо аргумента имени класса. Для получения примера смотрите Метод вызова, заданный во время выполнения.

Представлено до R2006a