JDK去oracle官网下载,目前17版本为最新长期维护版本
JVM(java virtual machine):是虚拟机,是真正运行java程序的地方,因此而使Java跨平台性高
JDK(java development kit):JVM、java类库、java开发工具
JRE(java run environment):JVM、java类库
byte short int long
float double
String
char
Boolean:true,false
空值:null
4. 工程、模块、包、类、主类关系
工程包含多个模块,模块包含多个包,包包含多个类
包(package):区别同名类
相同名不同包的类的调用:直接调用类名为默认包的类
money.loan此调用的为money包下的loan类
类:java程序由类组成
主类:一个工程只能有且仅有一个主类,包含主类的文件名与主类名相同,其他文件名为其中随意一个类名即可
main方法:程序的入口
如:
```java
public class people{
public static void main(String [] args){
}
}
```
5. 类型转换:精度
byte short char int long float double
精度小的转为精度大的类型没问题
精度大的转为精度小的类型会报错
6. 包的导入:import语句
基本数据类型封装:java.lang包,默认导入,无需手动导入
7. 输入输出操作
```
输出:System.out.println():输出完并换行
System.out.print():输出完不换行
输入:import java.util.Scanner;
Scanner reader = new Scanner(System.in);
double x = reader.nextDouble();
nextBoolean,nextByte,nextShort,nextInt,nextLong,nextFloat,nextDouble,nextCharacter
```
8. 数组
Java.lang.Arrays类中提供了一系列静态方法:sort(),CopyOf()等
```
int [] y = new int[10];
int [] y;//创建一个引用变量(默认值为0),此时数组还未创建出来,跟C++不同
y = new int[10];//为引用变量赋值(数组的首地址)
```
```
Student a = new Student();
Student a;//声明一个对象的引用变量,此时对象(实体)还未创建出,引用值为null
a = new Student();//创建对象(实体),并为引用变量赋值
Student b = new Student();
a = b;//将引用变量b的值赋给a,此时a和b都指向b所指向的对象(实体)
```
```
Student [] stu = new Student[10];
Student [] stu;//声明数组的引用变量
stu = new Student[10];//声明数组有10个元素,每个元素都是Studnet类型的对象,但都是空对象
stu[0] = new Student;//依次为数组元素创建对象
```