一、标识符中常见的命名规则:
常见的命名规则:见名知意
举例:定义一个学生类
class Student{}
包:其实就是文件夹,用于把相同的类名进行区分。
全部小写
单级:yangbin
多级:cn.yangbin
类或接口:
一个单词:单词的首字母必须大写
举例:Student,Dog
多个单词:每个单词的首字母必须大写
举例:HelloWorld,StudentName
方法或者变量:
一个单词:单词的首字母小写
举例:main , age
多个单词:从第二个单词开始,每个单词的首字母大写。
举例:studentAge,showAllNames()
常量:
一个单词:全部大写
举例:PI
多个单词:每个字母都大写,用下划线隔开
举例:STUDENT_MAX_AGE
二、注释:
1.java中注释的分类及格式:
单行注释://
多行注释:/**/
注意:多行不可以嵌套使用,而单行是可以的。
2.先写注释,再写代码!
例如:
/*
需求:我准备写一个java程序,把“HelloWorld”这句话输出在控制台
分析:
A:需要写一个java程序,必须定义类
B:把数据能够输出,说明我们的程序是可以独立运行的,而程序要独立运行,必须定义main方法
C:把数据输出在控制台,必须使用输出语句
实现:
A:java语言提供了一个关键字,class用来定义类,后面跟的是类名
B:main方法的格式是固定的:
public static void main (String[] args){}
C:输出语句的格式是固定的:
System.out.println("HelloWorld");
*/
//这是我的HelloWord案例
class HelloWorld{
/*
为了程序能够独立运行,定义main方法
main方法是程序的入口
被jvm自动调用
*/
public static void main(String[] args){
//为了把数据显示在控制台,我们就使用了输出语句
System.out.println("HelloWorld");
}
}
3.注释的作用:
A:解释说明程序,提高程序的阅读性
B:可以帮助我们调试程序,后面我们会讲解更高级的调试。
三、进制
1.其他进制到十进制的转换:
十进制 十进制
12345 = 10000 + 2000 + 300 + 40 + 5
= 1*10^4 + 2*10^3 + 3*10^2 + 4*10^1 + 5*10^0
= 10000 + 2000 + 300 + 40 + 5
= 12345
二进制 十进制
100 4
100 = 1*2^2 + 0*2^1 + 0*2^0
= 4+0
= 4
八进制 十进制
100 4
100 = 1*8^2 + 0*8^1 + 0*8^0
= 64
2.十进制到其他进制的转换:
十进制 十进制
12345 12345
12345/10 5
1234/10 4
123/10 3
12/10 2
1/10 1
除基取余,直到商为0,余数反转。
3.“8421码”是中国大陆的叫法,是BCD码的一种。在这种编码方式中每一位二进制代码的1
都是代表一个固定数值,把每一位的1代表的十进制数加起来,得到的结果就是
它所代表的十进制数码。
1 1 1 1 1 1 1 1
128 64 32 16 8 4 2 1
二进制到十进制的转换:
1010100 = 64 + 16 + 4
= 84
十进制到二进制的转换:
100 = 1100100
问题:任意的x进制到Y进制的转换,怎么办?
x进制 - 十进制
十进制 - y进制
或者是
拆分组合法(快速转换)
即八进制就取3位为一组
十六进制就取4位为一组
四、原码反码补码
有符号的数据表示法:
1.有符号数有三种表示法:原码,反码,补码。所有
数据的运算都是采用补码进行的。
2.为什么讲解这个知识点?
因为计算机在操作的时候,都是采用数据对应的二进制
的补码来计算的。
3.用原码,反码,补码用来表示+7,-7
首先我们得到7的二进制:111
原码:
符号位 数值位
+7 0 0000111
-7 1 0000111
正数的原码最高位是0;
负数的原码最高位是1;
其他的是数值位;
反码:
符号位 数值位
+7 0 0000111
-7 1 1111000
正数的反码与原码相同;
负数的反码与原码是符号位不变,
数值位取反,就是1变0,0变1;
补码:
符号位 数值位
+7 0 0000111
-7 1 1111001
正数的补码与原码相同;
负数的补码是在反码的基础上加1;
练习:A、已知某数x的原码为10110100B,试求x的补码和反码
符号位 数值位
原码 1 0110100
反码 1 1001011
补码 1 1001100
B、已知某数x的补码为11101110B,试求其原码。
符号位 数值位
补码: 1 1101110
反码: 1 1101101
原码 1 0010010
五、float数据在内存中是怎样存储的?
float类型数字在计算机中用4个字节存储。遵循IEEE-754格式标准:
一个浮点数有2部分组成:底数m和指数e
底数部分 使用二进制数来表示此浮点数的实际值
指数部分 占用8bit的二进制数,可表示数值范围为0-255
但是指数可正可负,所以,IEEE规定,此处算出的次方必须减去127才是真正的指数。
所以,float类型的指数可从-126到128
底数部分实际是占用24bit的一个值,但是最高位始终为1,所以,最高位省去不存储,在存储中占23bit
科学计数法。
格式:
SEEE EEEE EMMM MMMM MMMM MMMM MMMM MMMM
S表示浮点数正负
E指数加上127后的值得二进制数据
M底数
举例:
17.625在内存中的存储
首先要把17.625换算成二进制:10001.101
整数部分,除以2,直到商为0,余数反转。
小数部分,乘以2,直到乘位0,进位顺序取。
在将10001.101右移,直到小数点前只剩1位:
1.0001101 * 2^4 因为右移动了四位
这个时候,我们的底数和指数就出来了
底数:因为小数点前必为1,所以IEEE规定只记录小数点后的就好。所以,此处的底数为:0001101
指数:实际为4,必须加上127(转出的时候,减去127),所以为131。也就是10000011
符号部分是整数,所以是0
综上所述,17.625在内存中的存储格式是:
01000001 10001101 00000000 00000000