1.什么是标识符,标识符的命名规则?
-
含义:就是给类,接口,方法,变量等起名字使用的字符序列
-
规则:以数字,字母 -(下划线) $ 组成的
注意:不能以数字开头;不能使用关键字。
-
在Java编写代码过程中,起名字尽量是标识符,既不会报错,也符合规范。
注:在Java代码中,大小写很敏感,一定要注意
2… Java有哪几种注释,写法分别是?
- /* */ 可以多行注释,只起到注释的作用。
- /** */ 多行文档注释,可以被javadoc作为文档提取出来。
- // 只能单行注释 。
3.什么是关键字,关键字的特点,保留字有哪几个。
含义: 被Java语言赋予特定含义的单词
- 特点:组成关键字的字母全部小写
保留字:就是在现在编写代码过程中不使用,但是可能在以后代码更新后可以作为关键字使用的特殊字。
- 保留字只有两个:goto const 。
4.常量
含义:即为在程序执行的过程中其值不可以发生改变。
- 分类: 字面值常量和自定义常量
5. 变量
- 含义:在程序执行的过程中,在某个范围内其值可以发生改变的量。
- 定义格式:数据类型 变量名 = 变量值。
- 优点:用来不断的存放同一类型的常量,并可以重复使用 。
6.数据类型
- 基本数据类型和引用数据类型。
基本数据类型分类(四类八种)
- 整型:
- byte 占一个字节 -128~127
- short 占两个字节 - 2^15 ~ 2^15-1
- int 占两个字节 -2^31 ~ 2^31-1
- long 占八个字节 -2^63 ~ 2^63-1
- 浮点型
- float 占四个字节 -3.403E38~3.403E38 单精度
- double 占八个字节-1.798E308~1.798E308 双精度
- 字符型
- char 占两个字节 0~65535
- 布尔型
- boolean
boolean理论上是占八分之一个字节,因为一个开关就可以决定是true和false了,但是java中boolean类型没有明确指定他的大小
- boolean
注:
a:作用域问题
同一个区域不能使用相同的变量名
b:初始化值问题
局部变量在使用之前必须赋值(可以先声明后赋值,也可以定义的同时赋值)
c:一条语句可以定义几个变量
int a,b,c...;
7. 数据类型转换之隐式转换
- Java中的默认转换规则
- 取值范围小的数据类型与取值范围大的数据类型进行运算,会先将小的数据类型提升为大的,再运算 。
8. 数据类型转换之强制转换
- A:强制转换问题
int a = 10;
byte b = 20;
b = a + b; - B:强制转换的格式
b = (byte)(a + b); - C:强制转换的注意事项
如果超出了被赋值的数据类型的取值范围得到的结果会与你期望的结果不同
9.变量相加和常量相加的区别
- 看下面的程序是否有问题,如果有问题,请指出并说明理由。
byte b1 = 3;
byte b2 = 4;
byte b3 = b1 + b2;- 从两方面去回答这个题
b1和b2是两个变量,变量里面存储的值都是变化的,所以在程序运行中JVM是无法判断里面具体的值 - byte类型的变量在进行运算的时候,会自动类型提升为int类型
- byte b4 = 3 + 4;
3和4都是常量,java有常量优化机制,就是在编译的的时候直接把3和4的结果赋值给b4了 。
- 从两方面去回答这个题
10. 字符与字符串
- 计算单个字符(查看ASC11码表)
System.out.println(‘a’); 输出: a
System.out.println(‘a’+1); 输出:98 - 字符串与字符结合
System.out.println(“hello”+‘a’+1); 输出:helloa1
System.out.println(‘a’+1+“hello”); 输出:98hello - +在有字符串参与中被称为字符串连接符
System.out.println(“5+5=”+5+5); 输出: 5+5=55
System.out.println(5+5+"=5+5"); 输出: 10=5+5
11.char 类型
- char c = 97;( 范围:0 ~ 65535) 输出: a
注:Java语言中的字符char可以存储一个中文汉字吗?为什么呢?
可以。因为Java语言采用的是Unicode编码。Unicode编码中的每个字符占用两个字节。中文也是占的两个字节。所以,Java中的字符可以存储一个中文汉字