MATLAB外部接口编程(张威) 第7章

上传人:E**** 文档编号:89357336 上传时间:2019-05-23 格式:PPT 页数:103 大小:752KB
返回 下载 相关 举报
MATLAB外部接口编程(张威) 第7章_第1页
第1页 / 共103页
MATLAB外部接口编程(张威) 第7章_第2页
第2页 / 共103页
MATLAB外部接口编程(张威) 第7章_第3页
第3页 / 共103页
MATLAB外部接口编程(张威) 第7章_第4页
第4页 / 共103页
MATLAB外部接口编程(张威) 第7章_第5页
第5页 / 共103页
点击查看更多>>
资源描述

《MATLAB外部接口编程(张威) 第7章》由会员分享,可在线阅读,更多相关《MATLAB外部接口编程(张威) 第7章(103页珍藏版)》请在金锄头文库上搜索。

1、7.1 MATLAB的Java接口概述 7.2 Java语言概述 7.3 Java接口应用 7.4 应用示例,第7章 在MATLAB中调用Java,7.1 MATLAB的Java接口概述,MATLAB软件和Java之间的关系是非常密切的,从MATLAB 5.3开始,每一个客户安装的MATLAB中都包含了Java虚拟机,而且MATLAB的图形用户界面就是利用Java语言进行开发的。在MATLAB中可以直接调用Java语言开发功能丰富的应用程序,新版本的MATLAB工具箱中就包含了很多使用Java语言开发的图形用户界面工具,例如COM Builder的用户界面comtool等。利用MATLAB的J

2、ava接口可以完成下列工作:, 调用Java API 类(class)和包(package),完成核心功能; 调用第三方Java类(class); 在MATLAB 环境下创建Java对象; 通过Java语法或者MATLAB语法使用Java对象的方法; 在Java对象和MATLAB之间交互数据。,Java语言可以用来填补MATLAB的一些功能上的空白,例如MATLAB本身在文件的I/O能力上有所欠缺,可以通过Java来完成适当的补充,MATLAB创建的图形用户界面功能单一,也可以利用Java来弥补。特别是由于Java语言自身的优势,完全可以通过Java语言获取大量的来自于互联网或者数据库的数据,

3、而MATLAB本身的优势是进行数据分析、科学计算。于是,将两者有机地结合使用,充分发挥各自的优势,将极大提高工作效率,节约开发时间和成本。,目前Java已经发展到了Java 2版本,从Sun公司的官方网站上可以下载最新版本的JDK(Java开发包)供用户开发程序。不过,MATLAB推荐使用其中相对稳定的JDK版本进行MATLAB的Java程序开发。在MATLAB中键入下面的指令可以查看当前MATLAB使用的Java虚拟机的版本: version -java ans = Java 1.3.1_01 with Sun Microsystems Inc. Java HotSpot(TM) Clien

4、t VM (mixed mode),7.2 Java语言概述,Java本身并不简简单单是一种编程语言,它还是一个程序的运行环境(JVM),一种开发平台和手段,例如J2EE和J2ME等。作为一种编程语言,Java是一个优秀的完全面向对象的高级编程语言,它具有如下基本特征:, 简单; 可移植; 面向对象; 解释型; 分布式; 高性能; 健壮; 多线程处理能力; 安全; 动态; 中性结构。, 例7-1 简单的Java语言示例。 这里用一个简单的Java语言示例来演示开发Java程序的基本过程,该程序的作用是在控制台上输出一段文本。 001 / 002 / 第一个Java语言的例子,HelloWorl

5、d.java 003 / 004 public class HelloWorld 005 public static void main(String args) 006 System.out.println(“Hello Java World!“); 007 008 ,编译运行该程序,在控制台方式下(命令行提示符)键入下面的指令: javac HelloWorld.java 该指令完成了程序的编译。接着,在控制台方式下键入下面的指令: java HelloWorld 则控制台中将显示运行的结果: Hello Java World!,例7-1演示了一个完整的Java程序的编辑、编译和运行过程。

6、首先Java语言的源程序是纯文本格式的文件,可以使用任何一种能够编辑标准纯文本的编辑器编辑该文件,注意,Java语言源文件的扩展名为java。 然后通过javac指令将源文件(扩展名为.java)编译成为二进制字节码文件,得到的文件为HelloWorld.class。字节码文件必须通过Java虚拟机解释执行,如果在不同的计算机平台上具有能够解释执行字节码文件的虚拟机,就可以完成程序的跨平台应用。事实上,Java语言就是这样做的。最后使用Java指令解释执行前面生成的字节码文件HelloWorld.class。Java指令就是调用Java虚拟机解释执行前面生成的字节码文件。,Java程序的运行必

7、须具有Java虚拟机,Java虚拟机负责解释编译生成的字节码文件,几乎每一种操作系统都有自己的Java虚拟机,这样就可以达到“一处编译,随处运行”的目的。在图7-1中揭示了Java应用程序编译和运行的过程。,图7-1 Java程序的编译运行过程,例7-1中第006行的代码: System.out.println(“Hello Java World!“); 使用了J2SDK提供的标准类库System.out当中的println方法。实际上进行Java语言的开发多数情况下就是利用已有的类库开发自己的类库以实现特殊的要求。而这些丰富的类库就可以极大地丰富MATLAB的功能。,7.3 Java接口应用

8、,7.3.1 引入 Java 类,1. Java内建类 由Java语言本身提供的类和类包,例如Java.awt类包,这些类包构成了Java语言的基本应用,关于这些类包请参阅Java语言的文档说明。,2. 第三方定义类 除了Java内建类,有很多商业化或者免费的Java类包可以供程序开发人员使用,这些类包多数用来完成一些专门领域的特殊应用,例如Mathworks公司提供的工具箱类包。 3. 用户自定义类 通过面向对象语言的继承机制从已有的Java类派生或者使用Java语言直接开发的新类,这些新类一般可以完成用户需要的特殊功能,比如在例7-1中创建的HelloWorld类。,一般地,由不同的类组合

9、在一起就构成了类包,这些类包一般都安装在系统路径下面,通过系统变量classpath定义给操作系统。那么,在MATLAB中是如何管理和加载相应的Java类的呢? 在MATLAB的系统路径下存在一个文本文件classpath.txt,该文件定义了MATLAB环境可以直接引入的MATLAB包。一般该文件位于%MATLABROOT%toolboxlocal路径下,其内容为:,# # FILE: classpath.txt # # Entries: # o path_to_jarfile # o alpha,glnx86,sol2,UNIX,win32,mac=path_to_jarfile # o

10、$matlabroot/path_to_jarfile # o $jre_home/path_to_jarfile # $jre_home/lib/rt.jar $jre_home/lib/i18n.jar $jre_home/lib/swingall.jar,$matlabroot/java/patch mac=$matlabroot/java/jarext/aquaDecorations.jar $matlabroot/java/jar/util.jar $matlabroot/java/jar/widgets.jar $matlabroot/java/jar/beans.jar $mat

11、labroot/java/jar/hg.jar $matlabroot/java/jar/icebrowserbean.jar $matlabroot/java/jar/ide.jar $matlabroot/java/jar/jmi.jar $matlabroot/java/jar/mde.jar $matlabroot/java/jar/mlwidgets.jar $matlabroot/java/jar/mwswing.jar $matlabroot/java/jar/mwt.jar,$matlabroot/java/jar/page.jar $matlabroot/java/jar/s

12、ervices.jar $matlabroot/java/jar/test.jar $matlabroot/java/jar/timer.jar $matlabroot/java/jar/toolbox/bdd.jar $matlabroot/java/jar/toolbox/curvefit.jar $matlabroot/java/jar/toolbox/dastudio.jar $matlabroot/java/jar/toolbox/database.jar $matlabroot/java/jar/toolbox/dials.jar $matlabroot/java/jar/tool

13、box/dspblks.jar $matlabroot/java/jar/toolbox/ecoder.jar $matlabroot/java/jar/toolbox/filterdesign.jar,$matlabroot/java/jar/toolbox/images.jar $matlabroot/java/jar/toolbox/instrument.jar $matlabroot/java/jar/toolbox/matlab.jar $matlabroot/java/jar/toolbox/mbc.jar $matlabroot/java/jar/toolbox/mdldisc.

14、jar $matlabroot/java/jar/toolbox/nnet.jar $matlabroot/java/jar/toolbox/physmod.jar $matlabroot/java/jar/toolbox/reqmgt.jar $matlabroot/java/jar/toolbox/rptgen.jar $matlabroot/java/jar/toolbox/rptgencore.jar $matlabroot/java/jar/toolbox/simulink.jar,$matlabroot/java/jar/toolbox/softinstruments.jar $m

15、atlabroot/java/jar/toolbox/vr.jar $matlabroot/java/jar/verctrl.jar $matlabroot/java/jar/xml.jar $matlabroot/java/jarext/dc.zip $matlabroot/java/jarext/mwjava2specific.jar $matlabroot/java/jarext/SilkTest_Java1.jar $matlabroot/java/jarext/audio.jar $matlabroot/java/jarext/classes111.jar $matlabroot/j

16、ava/jarext/collections.jar $matlabroot/java/jarext/commapi/comm.jar $matlabroot/java/jarext/FTPProtocol.jar $matlabroot/java/jarext/gnu_regexp.jar $matlabroot/java/jarext/ice/ib5core.jar,$matlabroot/java/jarext/ice/ib5crypto.jar $matlabroot/java/jarext/ice/ib5extra.jar $matlabroot/java/jarext/ice/ib5http.jar $matlabroot/java/jarext/ice/ib5https.jar $matlabroot/java/jarext/ice/ib5js.jar $matlabroot/java/jarext/ice/ib5ref.jar $

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号