java应用跨平台原理
各种平台上装有不同的JVM(Java virtual machine)虚拟机
JDK,JRE,JVM各自的含义,以及包含关系?
JDK:Java Development Kit Java开发工具包
JRE:Java Runtime Environment Java运行环境
JVM:Java Virtual Machine Java虚拟机,也是一种软件.
其中JRE包括Java虚拟机(JVM)和Java程序所需的核心类库等
JDK中包含JRE,它们之间的关系为:
JRE = JVM + 核心类库
JDK = JRE + 开发工具
编写一个java程序的基本流程是?
a.编写源代码,保存后缀名为.java的文本文档中
b.用javac命令对它进行编译:
Compiler(编译)把人类能识别的代码转换成计算机能识别的二进制指令,编译的结果是生成一个和类名同名的
字节码文件:类名.class
c.使用java命令运行这个程序. java+类名
系统环境变量path的含义是?
- path环境变量:作用是指定命令搜索路径,在命令行下面执行命令程序时,它会到Path变量所指定的路径中查找看是否能找到相应的命令程序.我们需要把JDK安装目录下的bin目录增加到现有的path变量中,bin目录中包含经常要用到的可执行文件,如javac/java等,设置好path变量后,就可以在任何目录下执行javac/java等工具了.
- Classpath:根据path环境变量的原理,可以定义一个名为classpath环境变量,将要运行的class文件所在目录定义在该变量中,classpath变量值是java类文件的目录,path变量是Windows程序文件的目录.如果没有配置classpath环境变量,JVM只在当前目录下查找要运行的类文件;如果配置了classpath环境,JVM会先在classpath环境变量值得目录中查找要运行的类文件.
- 值的结尾处如果加上分号,那么JVM在classpath目录下没有找到要指定的类文件,会在当前目录下在查找一次
- 值的结尾处如果没有分号,那么jvm在classpath目录下没有找到要指定的类文件,不会在当前目录下查找,及时当前目录下有,也不会运行.
Java中的注释有几种?主要用途是?
- 单行注释 //要注释的文字
- 多行注释 /* 要注释的文字 */
- 文档注释 /** 注释的文字 */ 通常是加在类定义的前面和方法定义的前面
主要用途:就是解释代码程序是干什么的,有什么作用,主要是给开发人员看的.
什么是关键字?目前遇到的关键字都有哪些?其作用是?
关键字(keyword):在Java中被赋予了特殊含义的单词,特点是都是小写字母.
目前遇到的关键字:
public:公共的,公开的 权限修饰符,说明后面的类或者是方法谁都可以用.
class:定义类
static:静态的,说明这个方法可以属于类,可以使用类名直接调用.
void:空.说明当前的方法没有返回值
main:不是关键字.约定俗成的程序的入口点.
一个源文件是否可以包含多个类定义?是否可以包含多个public修饰的类定义?
一个源文件中可以包含多个类定义,但是public修饰的只能有一个.此源文件被编译后,类分别生成自己的.class字节码文件.
想被jvm虚拟机直接执行的类有什么要求?
想被jvm虚拟机直接运行的类必须包含main方法,否则不用定义.
补充
-
常用的DOS命令:
dir :directory 查看当前路径下所有文件和文件夹(目录)
cd : 切换路径 :change directory
绝对路径:以盘符开始的路径就是绝对路径
相对路径:不以盘符开始的路径就是绝对路径
有两个比较特殊的引用: . 表示当前路径 .. 表示父目录的引用
cls:clear screen 清屏
md:创建目录
md acd 级联创建
rd: 删除空目录
/q:安静模式 就是不会提示y
/s:级联删除
快速回到根目录: cd
del:删除文件(不走回收站)
文件名通配符:
?:代表单一字符
*:代表任意字符
exit:退出
Java语言的三种框架
JAVA EE:企业版,专门针对web开发提供的一套解决方案.
JAVA SE:标准版,可以开发简单的桌面应用.它是其它两种架构的基础.
JAVA ME:小型版,专门为移动设备.