Java程序开发与运行环境大纲
引导语:运行环境指一种把半编译的运行码在目标机器上运行的环境。 以下是本站小编分享给大家的Java程序开发与运行环境,欢迎阅读学习!
1.1JDK环境
Java不仅提供了一个丰富的语言和运行环境,而且还提供了一个免费的Java开发工具集(JavaDevelopersKits,简称JDK)。编程人员和最终用户可以利用这些工具来开发java程序或调用Java内容。JDK包括以下工具:javacJava语言编译器,输出结果为Java字节码javaJava字节码解释器javapDisassembeler:Java字节码分解程序,本程序返回Java程序的成员变量及方法等信息。javaprof资源分析工具,用于分析Java程序在运行过程中调用了哪些资源,包括类和方法的调用次数和时间,以及各数据类型的内存使用情况等。javahC代码处理工具,用于从Java类调用C++代码javaAppletViewer小应用程序浏览工具,用于测试并运行Java小应用程序javaDebuggerAPIJava调试工具APIPrototypeDebuggerJava调试工具原型Java开发环境还包括Java类库(包括I/O类库、用户界面类库、网络类库等)和HotJavaWWW浏览器。其中,HotJava浏览器提供了在WWW环境下运行Java代码的一个运行系统,而且还为WWW开发人员提供了一个Java开发框架。Java解释器是面向Java程序的一个独立运行系统,它可以一种稳定、高性能方式运行那些独立于平台的Java字节码,Java编译器则用于生成这些字节码。
1.1.1Java程序的编译
Java程序的编译程序是。javac命令将Java程序编译成字节码,然后你可用java解释器java命令来解释执行这些Java字节码。Java程序源码必须存放在后缀为的文件里。Java程序里的每一个类,javac都将生成与类相同名称但后缀为s文件。编译器把s文件放在文件的同一个目录里,除非你用了-d选项。当你引用到某些自己定义的类时,必须指明它们的存放目录,这就需要利用环境变量参数CLASSPATH。环境变量CLASSPATH是由一些被分号隔开的路径名组成。如果传递给javac编译器的源文件里引用到的类定义在本文件和传递的.其它文件中找不到,则编译器会按CLASSPATH定义的路径来搜索。例如:CLASSPATH=.;C:\java\classes则编译器先搜索当前目录,如果没搜索到,则继续搜索C:\java\classes目录。注意,系统总是将系统类的目录缺省地加在CLASSPATH后面,除非你用-classpath选项来编译。javac_g是一个用于调试的未优化的编译器,功能与用法和javac一样。javac的用法如下:javac[-g][-O][-debug][-depend][-nowarn][-verbose][-classpathpath][-nowrite][-ddir]...以下是每个选项的解释。
选项解释:
-classpathpath定义javac搜索类的路径。它将覆盖缺省的CLASSPATH环境变量的设置。路径是由一些由逗号隔开的路径名组成,一般格式如下:.;例如:.;C:\java\doc\classes;C:\tools\java\classes表示编译器遇到一个新类,它先在本文件中查找它的定义,如果没有,则在本文件所处目录下其它文件中查找它的定义,如果还没有,则继续搜索C:\java\doc\classes目录中的所有文件,以此类推。
-ddirectory指明类层次的根目录,格式如下:这样将程序里的生产的s文件存放在my_dir目录里.
-g带调试信息编译,调试信息包括行号与使用java调试工具时用到的局部变量信息。如果编译没有加上-O优化选项,只包含行号信息。
-nowarn关闭警告信息,编译器将不显示任何警告信息。
-O优化编译static,final,private函数,注意你的类文件可能更大。
-verbose让编译器与解释器显示被编译的源文件名和被加载的类名。
环境变量
CLASSPATH用来提?copy;给系统搜索用户定义的类的缺省路径。各路径由分号隔开,例如:.;C:\java\doc\classes;C:\tools\java\classes表示编译器遇到一个新类,它先在本文件中查找它的定义,如果没有,则在本文件所处目录下其它文件中查找它的定义,如果还没有,则继续搜索C:\java\doc\classes目录中的所有文件,以此类推。
-
java构造函数调用技巧
Java是一个纯的面向对象的程序设计语言,它继承了C++语言面向对象技术的核心,Java舍弃了C++语言中容易引起错误的指针(以引用取代)、运算符重载(operatoroverloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,...
-
Java 正则表达式
Java是一门编程语言,那么大家知道Java正则表达式是怎样的呢?下面一起来看看!Java正则表达式正则表达式定义了字符串的模式。正则表达式可以用来搜索、编辑或处理文本。正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别。正则表达式实例一个字符串其...
-
java的nio的使用示例分享
在jdk1.4中提出的技术,非阻塞IO,采用的是基于事件处理方式。传统的io技术为阻塞的`,比如读一个文件,惹read方法是阻塞的,直到有数据读入。归纳为:1、javaio为阻塞,在打开一个io通道后,read将一直等待在端口一边读取字节内容,如果没有内容进来,read相当于阻塞掉了。2、在1...
-
Java中如何获取Spring中配置的bean
Spring是一个分层的JavaSE/EEfull-stack(一站式)轻量级开源框架。在Java中如何获取Spring中配置的'bean?下面本站小编带大家一起来看看详细操作,希望对大家有所帮助!想了解更多相关信息请持续关注我们应届毕业生考试网!一、什么是Spring?Spring是一个轻量级的控...