javaSE基础学习day02

关键字(Keyword)和保留字(reserved word)

定义:被java语言赋予了特殊含义,用做专门用途的字符串(单词) 特点:关键字中所有字母都为小写

关键字

用于定义数据类型的关键字
class、interface、enum、byte、short、int、long、float、double、char、boolean、void
用于定义流程控制的关键字
if、else、switch、case、default、while、do、for、break、continue、return
用于定义访问权限修饰符的关键字
private、protected、public
用于定义类、函数、变量修饰符的关键字
abstract、final、static、synchronized
用于定义类与类之间关系的关键字
extends、implements
用于定义建立实例及引用实例,判断实例的关键字
new、this、super、instanceof
用于异常处理的关键字
try、catch、finally、throw、throws
用于包的关键字
package、import
其他修饰符关键字
native、strictfp、transient、volatile、assert
用于定义数据类型值的字面值(严格意义上不算关键字,但可当作关键字使用)
true、false、null

保留字

现有java版本尚未使用,但以后可能会作为关键字使用,命名标识符时要避免使用保留字goto、const

标识符(Identifier)

java对各种变量、方法和类等要素命名时使用的字符序列称为标识符

  • tips1:凡是自己可以起名字的地方都叫标识符

  • tips2:在起名字时,为了提高阅读性,要尽量有意义,做到“见名知意”

标识符的命名规则

  • 由26个英文字母大小写,0-9 ,_或 $ 组成

  • 数字不可以开头,标识符不能包含空格

  • Java中严格区分大小写,长度无限制

  • 不可以使用关键字和保留字,但能包含关键字和保留字

名称命名规范

  • 包名:多单词组成时所有字母都小写:xxxyyyzzz

  • 类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz(大驼峰)

  • 变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz(小驼峰)

  • 常量名:所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ

变量(Variable)

  • Java定义变量的格式:数据类型 变量名 = 变量值

  • Java中每个变量必须先声明,后使用

  • 变量的作用域在其定义的一对{}内

  • 变量只有在其作用域内才有效

  • 同一个作用域内,不能定义重名的变量

变量的分类

按数据类型分类:

整型:byte(1字节=8bit)、short(2字节) 、int(4字节)、long(8字节)
① byte范围:-128 ~ 127 ② 声明long型变量,必须以"l"或"L"结尾 ③ 通常,定义整型变量时,使用int型。 ④ 整型的常量,默认类型是:int型
浮点型:float(4字节)、double(8字节)
① 浮点型,表示带小数点的数值 ② float表示数值的范围比long还大 ③ 定义float类型变量时,变量要以"f"或"F"结尾 ④ 通常,定义浮点型变量时,使用double型。 ⑤ 浮点型的常量,默认类型为:double
字符型:char (1字符=2字节)
① 定义char型变量,通常使用一对'',内部只能写一个字符 ② 表示方式:1.声明一个字符 2.转义字符 3.直接使用 Unicode 值来表示字符型常量
布尔型:boolean
① 只能取两个值之一:true 、 false ② 常常在条件判断、循环结构中使用

按声明的位置分类:

  • 在方法体外,类体内声明的变量称为成员变量

  • 在方法体内部声明的变量称为局部变量

  • 二者在初始化值方面的异同(同:都有生命周期;异:局部变量除形参外,需显式初始化)

基本数据类型之间的运算规则

只讨论7种(byte,short,int,long,float,double,char)基本数据类型变量间的运算,不包含boolean

自动类型提升

  • 容量小的数据类型的变量与容量大的数据类型的变量做运算,结果自动提升为容量大的数据类型

  • byte 、char、short --> int --> long --> float --> double

  • 当byte、char、short三种类型的变量做运算时,结果为int型

byte b1 = 10;
byte b2 = 20;
char c1 = 30;
byte b3 = b1 + b2;  //编译不通过,从int转换为byte可能会有损失
char c2 = c1 + b1;  //编译不通过,从int转换为char可能会有损失

强制类型转换(自动类型提升的逆运算)

  • 需要使用强转符:( )

  • 强制类型转换,可能导致精度损失

int i2 = 128;
double d1 = 12.3;
int i1 = (int)d1;         //截断操作
​
byte b1 = (byte)i2;
System.out.println(b1);  //输出结果-128

String与8种基本数据类型间的运算

  • String属于引用数据类型

  • 声明String类型变量时,使用一对""

  • String可以和8种基本数据类型变量做运算,且运算只能是连接运算:+

  • 运算的结果仍然是String类型

String s = 123;    //编译不通过:int无法转换为String
String s1 = "123";
int i = (int)s1;   //编译不通过:String无法转换为int
char c = 'a';
int num = 10;
String str = "hello";
System.out.println(c + num + str);   //107hello
System.out.println(c + str + num);   //ahello10
System.out.println(c + (num + str)); //a10hello
System.out.println(str + num + c);   //hello10a
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值