Иллюстрированный самоучитель по MatLab

Приложение

Поддержка средств Java в MATLAB 6

Язык программирования Java обычно непосредственно не используется для поддержки математических вычислений в системе MATLAB. Однако этот перспективный язык высокого уровня входит в состав ядра системы и широко применяется для создания средств интерфейса и средств Интернета. Поэтому в новых версиях MATLAB 6.0/6.1 существенно расширена поддержка средств языка Java, который приобрел важное значение для решения задач в области создания электронных и Интернет-документов.

Фактически Java интегрирован в MATLAB и используется для построения его графического интерфейса и справочной системы (наряду с HTML). Кроме того, предусмотрены работа с рядом типов данных, классов и объектов, связанных с Java, и поддержка построенной на Java виртуальной машины. Основной материал по использованию средств языка Java имеется в дополнительном руководстве "MATLAB. External Interfaces. Version 6". Для знакомства с тонкостями программирования на Java рекомендуется обращаться в Интернет-сайт www.javasoft.com, посвященный этому языку. Уточнить версию Java, установленную в системе MATLAB, на вашей компьютерной платформе можно, исполнив команду:

>> version - Java ans
Java 1.1.8 from Sun Microsystems Inc.

Вы можете создавать объекты Java в MATLAB с использованием имени класса Java:

>> f = java.awt.Frame('My Title')
f =
Java .awt. Frame[f rameO. 0.0, 0x0 .i nval i d .hi dden .layout=java .awt. Border-Layout.
resizable.title=my title]

Методы объектов Java могут быть вызваны как с использованием синтаксиса Java, так и с использованием синтаксиса MATLAB:

>> setTitle (f. 'new title')
>> t = getTitle(f)
t =
new title

Тот же пример с использованием синтаксиса Java:

>> f.setTitle ('modify title')
>> t = f.getTitle
t =
modify title
>> whos f
Name Size Bytes Class
f1x1 Java.awt.Frame
Grand total is 1 elements using 0 bytes

Как видно из этого сообщения, в MATLAB поддерживаются Java-классы и Java-объекты.

Для более полного знакомства с возможностями Java в MATLAB можно воспользоваться справочной системой. Правда, в индексном каталоге поиск разделов по имени "Java" к успеху не приводит, но в окне расширенного поиска Search можно найти ряд статей по применению Java.

В окне справки в разделе Calling Java from MATLAB можно найти целый ряд разделов справки, посвященных применению этого языка в системе MATLAB (естественно, на английском языке).

Для получения информации об объектах и методах Java, с которыми может работать MATLAB, нужно исполнить команду:

>> methodsview Java.awt.Menultem

Данные окна рис. П2 показывают, что поддержка Java реализована в большом числе объектов и методов системы MATLAB.

При использовании объектов Java пользователь должен учитывать многочисленные отличия в свойствах объектов Java и объектов MATLAB, что ведет к различиям в результатах исполнения многих функций. Например, вот как работает функция определения длины строки в MATLAB:

>> s= 'Hello my friend!'
s =
Hello my friend!
>> size(s)
ans =
1 16

Результат означает, что строка s задана как одномерный массив с числом элементов 16. А вот как та же функция работает со строковым массивом Java:

>> string=java.lang.Sthng('Hello my friend!')
string=
Hello my friend!
>> size(string)
ans =
1 1

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

>> C=char(string)
C=
Hello my friend!
>> [m,n]=size(C)
m =
1
n =
16
>> whos C
Name Size Bytes Class
C 1x16 32 char array Grand total is 16 elements using 32 bytes
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.