标识符与关键字
标识符命名规则
① 标识符只能由数字、字母、下划线“_”、美元符号“$”组成,不能含有其它符号。
② 标识符不能以数字开始。
③ java 关键字和保留字不能作为标识符。
④ 标识符严格区分大小写。
⑤ 标识符理论上没有长度限制。
标识符命名规范
遵循驼峰命名方式:可以很好的分隔单词,每个单词之间会划清界限,同样也是增强程序的可读性,例如:getName 则表示获取名字,UserService 则表示用户业务类;
类名、接口名首字母大写,后面每个单词首字母大写,这是遵守驼峰命名方式的;
变量名、方法名首字母小写,后面每个单词首字母大写,这也是遵守驼峰命名方式的;
常量名全部大写,单词和单词之间使用“_”衔接,为了表示清楚含义,不要怕单词长,例如:INT_MAX_VALUE 则表示 int 类型最大值。
关键字
Java 关键字是编程语言里事先定义的,有特殊意义的单词,Java 中所有的关键字都是小写的英语单词。 关键字不能用作标识符。
变量
字面值
整数型(数字):1、2、100、-2
浮点型(数字,带小数):1.0、2.0、3.14
字符型(文字,单个字符):'a'、'中'
布尔型(真假):true、false
字符串型(文字,多个字符):"I love Yoda Yuki"
变量分类
在方法体当中声明的变量以及方法的每一个参数都是局部变量。在方法体外,类体内声明的变量称为成员变量,
成员变量声明时如果使用 static 关键字修饰的为静态成员变量(简称静态变量),如果没有 static 关键字修饰则称为实例成员变量(简称实例变量)
public class VarTest{
int x = 20; // 实例变量
static int y = 200; // 静态变量
public static void sum(int a, int b) { // 局部变量 a 和 b
int firstNum = 100; // 局部变量
}
}
局部变量只在方法体当中有效,方法开始执行的时候局部变量的内存才会被分配,当方法执行结束之后,局部变量的内存就释放了。
public class VarTest
{
static int k = 100;
public static void main(String[] args){
int k = 300;
System.out.println("main k = " + k);
m();
}
public static void m(){
System.out.println(k);
}
}
数据类型
Java 中的数据类型包括两大类,一类是基本数据类型,另一类是引用数据类型。
基本数据类型
基本数据类型包括 4 类 8 种:
整数型(不带小数的数字):byte,short,int,long
浮点型(带小数的数字):float,double
字符型(文字,单个字符):char
布尔型(真和假):boolean

字符编码
Java 为了国际化,为了支持所有国家的语言,所以 Java 采用的编码方式为 Unicode 编码。
例如字符'中'对应的 Unicode 码是'\u4e2d'。
整数型
整数型数据在 java 中有 4 种表示方式,分别是十进制、八进制、十六进制、二进制。不过要注意的是二进制写法是在 Java7 中引入的,
对于 Java7 之前的版本不支持该语法。默认为十进制,以 0 开始表示八进制,以 0x 开始表示十六进制,以 0b 开始表示二进制。
类型转换
一个数据在赋值给一个变量的时候存在三种不同的情况。
第一种情况是类型一致,不存在类型转换;
第二种情况是小容量可以自动赋值给大容量,称为自动类型转换;
第三种情况是大容量不能直接赋值给小容量,大容量如果一定要赋值 给小容量的话,必须添加强制类型转换符进行强制类型转换操作。
不过需要注意的是,强制类型转换在使用的时候一定要谨慎,因为可能会导致精度损失。
public class IntegerTypeTest05 {
public static void main(String[] args) {
long num = 2147483648;
//会报错,存在int类型向long类型的转换 应为 long num = 2147483648L;
}
}
例外:
public class IntegerTypeTest06 {
public static void main(String[] args) {
byte b = 1;
System.out.println(b);
}
}
当一个整数型的字面量没有超出 byte,short,char 的取值范围,可以将该字面量直接赋值给byte,short,char 类型的变量,如果超出范围则需要添加强制类型转换符。
布尔类型
public class BooleanTest2 {
public static void main(String[] args) {
boolean flag = 1;
boolean success = 0;
//会报错,Java中boolean类型不可赋值0或1
}
}
在 Java 中布尔类型的变量值不能使用 1 和 0,只能使用 tru和 false。
浮点类型
public class DoubleTest {
public static void main(String[] args) {
float f = 3.0;
//会报错
//应为 float f = 3.0F;
}
}
3.0 默认被当做 double 类型来处理,占用 8 个字节,前面的 f 变量是 float 类型占用 4 个字节,大容量无法直接赋值给小容量。
只要是浮点型的字面量,例如 1.0、3.14 等默认会被当做 double 类型来处理,如果想让程序将其当做 float 类型来处理,需要在字面量后面添加 f/F。
基本数据类型转换
八种基本数据类型中,除 boolean 类型不能转换,剩下七种类型之间都可以进行转换;
如果整数型字面量没有超出 byte,short,char 的取值范围,可以直接将其赋值给 byte,short,char 类型的变量;
小容量向大容量转换称为自动类型转换,容量从小到大的排序为:byte < short(char) < int < long < float < double,其中 short 和 char 都占用两个字节,但是 char 可以表示更大的正整数;
大容量转换成小容量,称为强制类型转换,编写时必须添加“强制类型转换符”,但运行时可能出现精度损失,谨慎使用;
byte,short,char 类型混合运算时,先各自转换成 int 类型再做运算;
多种数据类型混合运算,各自先转换成容量最大的那一种再做运算;
注意事项
整数型字面值默认当做 int 类型处理,如果以 long 形式表示,需要在字面值后添加 L或 l;
浮点型字面量默认被当做 double 处理,后面添加 F/f 才可以被当做 float 类型;
而布尔型在 Java 中只有 true 和 false 没有其他值;
字符型变量完全可以存储 1 个汉字
本文详细介绍了Java编程语言的基础语法,包括标识符的命名规则、关键字的使用、变量的分类及作用域、基本数据类型及其转换等内容,并强调了驼峰命名法的重要性。

8万+

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



