Java2的三大版本
J2SE: 标准版,用于桌面开发,也是学习的起点
J2ME:嵌入式开发,没多少人用
J2EE:企业级开发,服务器端的王者
JDK:Java Development Kit学习java必备的开发工具
JRE:Java Runtime Enviroment
JVM:Java Virtual Machine这个虚拟机是java跨平台的关键
配置环境变量:
我的电脑右键属性——高级系统设置——配置环境变量;
系统变量下点新建,变量名填入JAVA_HOME,变量值输入JDK的安装路径;
配置path变量,输入%JAVA_HOME%bin和%JAVA_HOME%\jre\bin
测试是否安装成功:
cmd输入java -version
java安装目录下的文件夹用途:
bin放一些可执行文件
include放一些c语言的头文件
lib放一些java的类文件
写一个hello world程序:
public class hello(){
public class main(String args[]){
System.out.print("hello world");
}
}
在cmd中输入javac hello.java即可对源文件进行编译,编译会生成一个java.class的可执行文件。然后输入java hello即可运行。
Java的特点
早期的Java是解释型的。现在Java虚拟机使用了即时编译器,因此采用Java编写的“热点”代码其运行速度与C++相差无几,有些情况下甚至更快。
在Java中,整型的范围与运行Java代码的机器无关。这就解决了软件从一个平台移植到另一个平台,或者在同一个平台中的不同操作系统之间进行移植给程序员带来的诸多问题。与此相反,C和C++程序需要针对不同的处理器选择最为高效的整型,这样就有可能造成一个在32位处理器上运行很好的C程序在16位系统上运行却发生整数溢出。由于Java程序必须保证在所有机器上都能够得到相同的运行结果,所以各种数据类型的取值范围必须固定。Java没有任何无符号(unsigned)形式的int、long、short或byte类型。
浮点数值不适用于无法接受舍入误差的金融计算中。例如,命令System.out.println(2.0–1.1)将打印出0.8999999999999999,而不是人们想象的0.9。这种舍入误差的主要原因是浮点数值采用二进制系统表示,而在二进制系统中无法精确地表示分数1/10。这就好像十进制无法精确地表示分数1/3一样。如果在数值计算中不允许有任何舍入误差,就应该使用BigDecimal类。
boolean(布尔)类型有两个值:false和true,用来判定逻辑条件。整型值和布尔值之间不能进行相互转换。在C++中,数值甚至指针可以代替boolean值。值0相当于布尔值false,非0值相当于布尔值true。在Java中则不是这样。