使用记事本开发Java程序
1、使用记事本编辑.java源程序,类名和文件名相同
public class HelloWorld {
public static void main(String[] args){
System.out.println("Hello World");
}
}
2、使用javac命令编译,生成.class文件

3、使用java命令运行.class文件

Java程序运行过程
1、编写源程序如:MyProgram.java
2、编译源程序生成字节码文件如:生成MyProgram.class
3、运行
Java虚拟机与跨平台原理
JVM(Java Virtual Machine,简称 JVM)也是一个软件,不同的平台有不同的版本。我们编写的Java源码,编译后会生成一种 .class 文件,称为字节码文件。Java虚拟机就是负责将字节码文件翻译成特定平台下的机器码然后运行。也就是说,只要在不同平台上安装对应的JVM,就可以运行字节码文件,运行我们编写的Java程序。
而这个过程中,我们编写的Java程序没有做任何改变,仅仅是通过JVM这一”中间层“,就能在不同平台上运行,真正实现了”一次编译,到处运行“的目的。
JVM是一个”桥梁“,是一个”中间件“,是实现跨平台的关键,Java代码首先被编译成字节码文件,再由JVM将字节码文件翻译成机器语言,从而达到运行Java程序的目的。
注意:编译的结果不是生成机器码,而是生成字节码,字节码不能直接运行,必须通过JVM翻译成机器码才能运行。不同平台下编译生成的字节码是一样的,但是由JVM翻译成的机器码却不一样。
所以,运行Java程序必须有JVM的支持,因为编译的结果不是机器码,必须要经过JVM的再次翻译才能执行。即使你将Java程序打包成可执行文件(例如 .exe),仍然需要JVM的支持。
注意:跨平台的是Java程序,不是JVM。JVM是用C/C++开发的,是编译后的机器码,不能跨平台,不同平台下需要安装不同版本的JVM。
Java程序结构
/**
* javaDoc注释
* public公共的
* 每个.java文件都需要一个public的公共类,也只能有一个
* 公共类名必须和文件名保持一致
*/
public class HelloWorld {
/*
多行注释
在中间写的都会被注释掉
下面是主方法入口;
static的
void无返回值的方法
main 方法名 main比较特殊,不建议写成其他方法
String字符串
[]数组
args是参数名,可变,但在主方法中,不建议变
*/
public static void main(String[] args){
//单行注释 打印 如果是println是换行打印
System.out.print("Hello World");
}
}
从控制台输出信息
System.out.print();
System.out.println();
转义符
\n 将光标移动到下一行的第一格
\t 将光标移动到下一个水平制表位置(如果前面没有字符,默认四个字符,如果有,补全四个)
Java程序的注释
单行注释:以//开始
多行注释:以 /*开始以*/结尾
JavaDoc注释:以/**开始以*/结尾
编译与反编译
编译:将源文件(.java)转换成字节码文件(.class)的过程称为编译
反编译:将字节码文件(.class)转换回源文件(.java)的过程称为反编译
1094

被折叠的 条评论
为什么被折叠?



