《java语言的基本语法》由会员分享,可在线阅读,更多相关《java语言的基本语法(97页珍藏版)》请在金锄头文库上搜索。
1、课件制作人:XXX,第 2 章 Java开发基础,2.1 标识符和关键字 2.2 常量与变量 2.3 数据类型 2.4 运算符 2.5 字符串,课件制作人:XXX,2.1 标识符和关键字,Java语言中的类名、对象名、方法名、常量名和变量名统称为标识符。标识符由程序员定义,可以由字母、数字、下划线(_)和($)符号组成,但是标识符的第一个字符不允许为数字,只允许为字母、下划线(_)或($)符号。 在Java语言中还定义了一些专有词汇,统称为关键字,例如public、class、int等,它们都具有一种特定的含义,只能用于特定的位置,不能作为标识符使用。,课件制作人:XXX,Java关键字,在定
2、义标识符时,不允许定义为表中列出的任一关键字,课件制作人:XXX,Java标识符命名规则,为了提高程序的可读性,在定义标识符时,要尽量遵循“见其名知其意“的原则。Java标识符的具体命名规则如下: 一个标识符可以由几个单词连接而成,以表明它的意思。 对于类名,每个单词的首字母都要大写,其他字母则小写,例如RecordInfo。 对于方法名和变量名,与类名有些相似,除了第一个单词的首字母小写外,其他单词的首字母都要大写,例如getRecordName() 。,课件制作人:XXX,Java标识符命名规则,对于常量名,每个单词的每个字母都要大写,如果由多个单词组成,通常情况下单词之间用下划线(_)分
3、隔,例如MAX_VALUE。 对于包名,每个单词的每个字母都要小写,例如com.frame。 注意:Java语言是区分字母大小写的,即Java不等于java,课件制作人:XXX,2.2 常量与变量,常量和变量在程序代码中随处可见,下面就具体讲解常量和变量的概念及使用要点,从而达到区别常量和变量的目的。,课件制作人:XXX,2.2.1 常量的概念及使用要点,所谓常量,就是值永远不允许被改变的量。如果要声明一个常量,就必须用关键字final修饰,声明常量的具体方式如下: final 常量类型 常量标识符; 例如: final int YOUTH_AGE; / 声明一个int型常量 final fl
4、oat PIE; / 声明一个float型常量 注意:按照Java命名规则,常量标识符所有的字符都要大写,各个单词之间用下划线 _ 分隔,课件制作人:XXX,常量,在声明常量时,通常情况下立即为其赋值,即立即对常量进行初始化,声明并初始化常量的具体方式如下: final 常量类型 常量标识符 = 常量值; 例如: final int YOUTH_AGE = 18; / 声明int型常量,初始化为18 final float PIE = 3.14F; / 声明float型常量,初始化为3.14 说明:为float型常量赋值时,需要在数值的后面加上一个字母“F”或“f” 。,课件制作人:XXX,常
5、量,声明多个同一类型的常量,可以采用下面的形式: final 常量类型 常量1= 常量值1, 常量2= 常量值2, ; 例如: final int NUM1 = 14, NUM2 = 25, NUM3 = 36; 注意:如果在声明常量时已经对其进行了初始化,则常量的值不允许再被修改,课件制作人:XXX,2.2.2 变量的概念及使用要点,所谓变量,就是值可以被改变的量。声明变量的具体方式如下: 变量类型 变量标识符; 例如: 注意:定义变量名时,按照Java的命名规则,第一个单词的首字母小写,其他单词的首字母大写,例如 “partyMemberAge”。,String name; / 声明Str
6、ing型变量 int partyMemberAge ; / 声明int型变量,课件制作人:XXX,变量,在声明变量时,可以立即为其赋值,即立即对变量进行初始化,具体语法如下: 变量类型 变量标识符 = 变量值; 例如:,int partyMemberAge = 26; / 声明一个int型变量 float money = 3150; / 声明float类型变量,课件制作人:XXX,同类型变量,如果需要声明多个同一类型的变量,也可以采用下面的形式: 变量类型 变量1, 变量2, 变量3; 变量类型 变量4= 变量值4, 变量5= 变量值5, 变量6= 变量值6; 例如: 说明:变量区别于常量,它
7、的值允许被改变。,int A, B, C; / 声明3个int型变量 int D = 4, E = 5, F = 6; / 声明并分别初始化3个int型变量,课件制作人:XXX,2.3 数据类型,Java语言中的数据类型划分为两大类,分别是基本数据类型和引用数据类型。 其中基本数据类型由Java语言定义,不可以再进行划分。基本数据类型的数据占用内存的大小固定,在内存中存入的是数值本身 引用数据类型在内存中存入的是引用数据的存放地址,并不是数据本身。 Java语言中的数据类型分类情况如下图所示:,数据类型,课件制作人:XXX,2.3.1 基本数据类型,基本数据类型分为: 整数型 浮点数型 字符型
8、 逻辑型(布尔型) 它们分别用来存储整数、小数、字符和布尔值,下面将依次讲解这4个基本数据类型的特征及使用方法。,课件制作人:XXX,整数型,声明为整数型的常量或变量用来存储整数,整数型包括: 字节型(byte) 短整型(short) 整型(int) 长整型(long) 这4个数据类型的区别是它们在内存中所占用的字节数不同,因此,它们所能够存储的整数的取值范围也不同。,整数占用内存大小以及取值范围,课件制作人:XXX,长整型数值,在为long型常量或变量赋值时,需要在所赋值的后面加上一个字母“L”(或“l”),说明所赋的值为long型。如果所赋的值未超出int型的取值范围,也可以省略字母“L”
9、(或“l”)。 例如下面的代码均是正确的。,long la = 9876543234L; / 超出了int取值范围,必须加“L” long lb = 98765432L; / 未超出int取值范围,也可以加“L” long lc = 98765432; / 未超出int取值范围,可以省略“L”,课件制作人:XXX,浮点数,声明为浮点数型的常量或变量用来存储小数,浮点数包括单精度型(float)和双精度(double)两个基本数据类型,这两个数据类型的区别是它们在内存中所占用的字节数不同,因此,它们所能够存储的整数的取值范围也不同,课件制作人:XXX,float型数值,在为float型常量或变量
10、赋值时,需要在所赋值的后面加上一个字母“F”(或“f”),说明所赋的值为float型。如果所赋的值为整数,并且未超出int型的取值范围,也可以省略字母“F”(或“f”)。 例如下面的代码均是正确的。,float fa = 9412.75F; / 赋值为小数,必须 “F” float fb = 9876543210F; / 赋值超出int取值范围,必须 “F” float fc = 9412F; / 未超出int取值范围,可以 “F” float fd = 9412; / 可以省略“F”吗?,课件制作人:XXX,double型数值,在为double型常量或变量赋值时,需要在所赋值的后面加上一个字
11、母“D”(或“d”),说明所赋的值为double型。如果所赋的值为小数,或者所赋的值为整数,并且未超出int型的取值范围,也可以省略字母“D”(或“d”)。 例如下面的代码均是正确的。,double da = 9412.75D; / 所赋值为小数,可以加上 “D” double db = 9412.75; / 所赋值为小数,也可以省略 “D” double dc = 9412D; / 未超出int取值范围,可以加上 “D” double dd = 9412; / 未超出int取值范围,可以省略“D” double de = 9876543210D; / 超出int取值范围,必须加上 “D,课件
12、制作人:XXX,字符型,声明为字符型的常量或变量用来存储单个字符,它占用内存的2个字节来存储,字符型利用关键字“char”进行声明。 Java中的字符通过Unicode字符编码,以二进制的形式存储到计算机中,计算机可通过数据类型判断要输出的是一个字符还是一个整数。Unicode编码采用无符号编码,一共可存储65536个字符,所以Java中的字符几乎可以处理所有国家的语言文字。,课件制作人:XXX,字符型数值,在为char型常量或变量赋值时,无论值是一个英文字母,或者是一个符号,还是一个汉字,必须将所赋的值放在英文状态下的一对单引号中。 例如下面的代码分别将字母“M”、符号“*”和汉字“男” 赋
13、值给char型变量ca、cb和cc。,char ca = M; / 将大写字母“M”赋值给char型变量 char cb = *; / 将符号“*”赋值给char型变量 char cc = 男; / 将汉字“男”赋值给char型变量,课件制作人:XXX,逻辑型,声明为逻辑型的常量或变量用来存储逻辑值,逻辑值只有true和false,分别用来代表逻辑判断中的“真”和“假”,逻辑型利用关键字“boolean”进行声明。 例如下面的代码分别将true和false赋值给变量ba和bb。,boolean ba = true; / 将true赋值给变量ba boolean bb = false; / 将f
14、alse赋值给变量bb,课件制作人:XXX,逻辑型,也可以将逻辑表达式赋值给boolean型变量,例如下面的代码分别将逻辑表达式“6 8”赋值给boolean型变量ba和bb。,boolean ba = 6 8; / 将表达式“6 8”赋值给变量bb,课件制作人:XXX,2.3.2 引用数据类型,引用数据类型包括类引用、接口引用以及数组引用。 下面的代码分别声明一个java.lang.Object类的引用、java.util.List接口的引用和一个int型数组的引用。 说明:将引用数据类型的常量或变量初始化为null时,表示引用数据类型的常量或变量不引用任何对象。,Object object
15、 = null; / 声明一个Object类的引用变量 List list = null; / 声明一个List接口的引用变量 int months = null; / 声明一个int型数组的引用变量,课件制作人:XXX,2.3.3 基本类型与引用类型的区别,基本数据类型与引用数据类型主要区别在以下两个方面: 基本数据类型与引用数据类型的组成 Java虚拟机处理基本数据类型变量与引用数据类型变量的方式。,课件制作人:XXX,组成,基本数据类型是一个单纯的数据类型,它表示的是一个具体的数字、字符或逻辑值,例如68、M或true 对于引用数据类型,若一个变量引用的是一个复杂的数据结构的实例,则该变
16、量的类型就属于引用数据类型 在引用数据类型变量所引用的实例中,不仅可以包含基本数据类型的变量,还可以包含对这些变量的具体操作行为,甚至是包含其他引用类型的变量。,课件制作人:XXX,组成,【例2.2】基本数据类型与引用数据类型 例如: 创建一个档案类Record 在该类中利用引用类型变量name存储姓名 利用char型变量sex存储性别 利用int型变量age存储年龄 利用boolean型变量married存储婚姻状况 提供一些操作这些变量的方法 创建档案类Record的引用变量,课件制作人:XXX,Java虚拟机的处理方式,对于基本数据类型的变量,Java虚拟机会根据变量的实际类型为其分配内存空间。 例如为int型变量分配4个字节的内存空间。 而引用类型的变量,Java虚拟机在内存空间中存放的并不是变量所引用的对象,而是对象在堆内存中存放的地址,所以引用变量最终只是指向被引用的对象,而不是存储引用对象的数据,因此两个引用变量之间的赋值,就是将一个引用变量存