一、关键字
定义:被Java语言赋予了特殊含义,用做专门用途的字符串(或单词)
HelloWorld案例中,出现的关键字有 class、public 、 static 、 void 等,这些单词已经被Java定义好了
特点:全部关键字都是小写字母,一共50个,其中const和goto是保留字,true,false,null不在其中,它们看起来像关键字,其实是字面量,表示特殊的布尔值和空值。
二、标识符
Java中变量、方法、类等要素命名时使用的字符序列,称为标识符。
技巧:凡是自己可以起名字的地方都叫标识符。
命名规则(必须遵守)
> 由26个英文字母大小写,0-9 ,_或 $ 组成
> 数字不可以开头。
> 不可以使用关键字和保留字,但能包含关键字和保留字。
> Java中严格区分大小写,长度无限制。
> 标识符不能包含空格。
命名规范(建议遵守)
> 包名:多单词组成时所有字母都小写:xxxyyyzzz。
例如:java.lang、com.atguigu.bean
> 类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz
例如:HelloWorld,String,System等
> 变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz
例如:age,name,bookName,main,binarySearch,getName
> 常量名:所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ
例如:MAX_VALUE,PI,DEFAULT_CAPACITY
注意:在起名字时,为了提高阅读性,要尽量有意义,“见名知意”。
三、变量
1、概念
- 内存中的一个存储区域,该区域的数据可以在同一类型范围内不断变化
- 变量的构成包含三个要素:数据类型、变量名、存储的值
- Java中变量声明的格式:数据类型 变量名 = 变量值
2、作用
变量的作用:用于在内存中保存数据
3、使用范围
Java中每个变量必须先声明,后使用。
使用变量名来访问这块区域的数据。
变量的作用域:其定义所在的一对{ }内。
变量只有在其作用域内才有效。出了作用域,变量不可以再被调用。
同一个作用域内,不能定义重名的变量。
4、变量类型
基本数据类型:包括 整数类型、浮点数类型、字符类型、布尔类型。
引用数据类型:包括数组、 类、接口、枚举、注解、记录。
5、变量分类
- 静态变量
在类里面,方法外,使用static修饰,只要类加载,它就存在,可以使用类名.变量调用,但普通变量必须用对象调用,如果没有初始化,则会默认的(数值型变量初始化成0或0.0,字符型变量的初始化值是16位的0,布尔型默认是false)
- 成员变量
定义在类里面 方法外面,从属于对象,所以对象消失,它也跟着消失,如果没有初始化,则会默认的
- 局部变量
//局部变量,定义在方法内或者语句块内,从属于方法或者语句块,使用之前必须手动初始化,
public class Welcome { //定义常量 final double MAX_S=3.14; Static int c;//静态变量,在类里面,方法外,使用static修饰,只要类加载,它就存在,可以使用类名.变量调用,但普通变量必须用对象调用,如果没有初始化,则会默认的(数值型变量初始化成0或0.0,字符型变量的初始化值是16位的0,布尔型默认是false) int b;//成员变量,定义在类里面 方法外面,从属于对象,所以对象消失,它也跟着消失,如果没有初始化,则会默认的 //注:静态变量与成员变量统称为全局变量 public void Test(){ int a;//局部变量,定义在方法内或者语句块内,从属于方法或者语句块,使用之前必须手动初始化, } }
四、基本数据类型
自动转换
同样道理,当一个 int 类型变量和一个double 变量运算时, int 类型将会自动提升为double 类型进行运算
强制转换
注意
7、运算符
使用注意
赋值运算符
右边的值可以是任何常 数、变量或者表达式,只要能产生一个值就。但左边的值必须是一个明确的、已命名的变量。也就是说, 它必须有一个物理性的空间来保存右边的值。举个例子来说,可将一个常数赋给一个变量(A=4;),但不可 将任何东西赋给一个常数(比如不能4=A)。
逻辑运算符
8、语句
8.1、顺序语句
(按照代码正常顺序)
8.2、选择语句
if语句
if-else语句
多个if-else
switch
8.3、循环语句
for
while 先判断在执行
do-while 先执行再判断
8.4、其他的流程控制
9、函数
函数(方法)
修饰符 返回值类型 函数名(参数类型 参数1,参数类型 参数2){
执行语句1;
return 返回语句;
}
10、数组
public static void main(String[] args) {
//数组定义三种方式
int[] a1 = new int[] {1,2,3};
int[] a2 = {1,2,3};
int[] a3 = new int[5];
//数组最大索引值x.length-1
System.out.println(a1.length-1);//2
//遍历数组
for (int i = 0; i < a1.length; i++) {
System.out.println(a1[i]);
}
for (int i =a1.length-1;i>=0;i--) {//反向遍历
System.out.println(a1[i]);
}
}