1、JDK(java 开发工具包)包含JRE(Java运行时环境),JRE包含JVM(Java虚拟机)。
2、我们编写的是.java文件,由编译器编译成.class文件(可跨平台的关键在于此),最终由解释器执行.class文件。实际上是假设我们编写了一个源代码叫Hello.java,然后用javac Hello.java
编译这个文件,自动生成一个字节码文件叫Hello.class,最后我们用java Hello
执行这个字节码文件,就能得到相应的结果。
3、Java体系中,基础的部分是JavaSE(标准版本),还有JavaEE(企业版本),还有JavaME(用于Android开发)。
4、Java的变量分为基本数据类型和引用数据类型,大白话就是基本数据类型储存的是变量的数值(比如常见的int,float,double,char,String,貌似只有String首字母是大写的),而引用数据类型储存的数据在内存中的地址(比如class,interface和数组)。
5、常量名关键字是final,变量名一般大写,比如final String CITY = 'BJ';
。
6、Java中的逻辑运算符是两个字符,如&&、||和!。
7、整一段代码作为基础入门练习
import java.util.Scanner;
public class Hello {
public static void main(String[] args){
//获取用户输入
Scanner sc = new Scanner(System.in);
System.out.print("请输入当前成绩:");
int score = sc.nextInt();
int count = 0;
//输入变动前成绩
System.out.println("变动前成绩是:"+score);
//开始变动
if (score > 60){
while (score > 60){
score--;
count++;
}
}else if(score < 60){
while (score < 60){
score++;
count++;
}
}
System.out.println("变动后成绩是:"+score);
System.out.println("变动次数为:"+count);
}
}
8、控制语句没什么好说的,因为学过C++所以能适应,需要注意的是for循环的简写版本foreach语句,因为长时间使用python,所以需要注意写法,for(int h : Hello)
。初期可以尽量用for代替foreach,二者在效率和安全性上存在一些差别。
9、数组的定义比较重要,写法比较奇怪,需要适应一下,二位数组与此类似。比如:
//初始化一个数组的写法
String[] hobby = new String[5]
//常用写法
String[] names = {"Andy", "Bob", "Clair"};
float scores[] = {78, 89, 87};
10、最后一个基础知识点,就是方法。功能没什么说的,需要注意static修饰符类静态方法以及习惯这样的写法。
public void Hello(String name){
}
11、另一个不熟悉的点是,同名但参数的顺序不同的话,也属于方法的重载。记录一下判断方法重载的依据:
- 必须是在同一个类中
- 方法名相同
- 方法参数的个数、顺序或类型不同
- 与方法的修饰符或返回值没有关系