讲点Java的小知识

这篇文章讲的有点杂,但都是有用的,我整合到一起来了,了解一下。

a.标识符的命名规范:
1:见名知意 根据标识符的名字就大概的能猜出标识符所代表的是什么数据。
2:驼峰命名法: 多个单词构成一个标识符的时候,单词的首字符要求大写。

1:局部变量标识符的命名规范:
首字符小写,多个单词构成,从第二个单词开始,每个单词的首字符大写。
例如:studentName。 stuName className
2:class 关键字后面的名字 类名 的命名规范:
首字母大写,多个单词构成,遵循驼峰命名法。
3:final 修饰的终态变量的命名规范:
所有的字符全部大写,多个单词构成,使用下划线分割。
final int MAX_COUNT = 29;
final byte BYTE_MAX_VALUE,BYTE_MIN_VALUE;
BYTE_MAX_VALUE = 127;
BYTE_MIN_VALUE = -128;
4:标号:命名规范同 局部变量。 java 中是不建议使用标号的。
5:方法名:命名规范同 局部变量。
6:成员变量:命名规范同 局部变量。
7:包名:全部小写,一般使用公司的域名的逆序形式+模块名 作为包的名称。一般包的层次3-4层。
为了避免不同公司之间的类的同名冲突的问题,不同公司的域名必然是不同的,所以包名不同。

b.斜杠和反斜杠:
1.\是反斜杠, 在windows系统中 dos 中,\ 用来表示目录。
cd \ 这里的反斜杠代表当前盘符的根目录

2./是斜杠,DOS 中斜杠用来作为命令行参数的标志
比如 删除某个目录以及目录下的所有的文件和目录

3.rd /s /Q 某个目录
rd /?代表rd 可以使用那些参数来使用

c.进制:
1.java 中支持几种进制的数据。
四种 :二进制,八进制,十进制,十六进制。

2.了解进制:
十进制:逢十进一。一位十进制数的取值范围[0-9]
二进制:逢二进一。一位二进制位的取值范围[0-1]
八进制:逢八进一。一位八进制位的取值范围[0-7]
十六进制:逢十六进一,一位十六进制的取值范围[0-f] 或者是[0-F] a-f 或者 A-F 来代表 10–15

3.如何在程序中用不同的进制来表示一个数值。
(1):默认的情况就是十进制。
例如: 11,17 89
(2):二进制:在数值的前面添加符号 0b 是在jdk1.7版本之后才开始支持的。
0b101–>5
(3):八进制:在数值的前面添加符号 0
071—>57
(4):十六进制:在数值的前面添加符号 0x
0xae—>160+14=174
4.计算机底层使用二进制存储数据。
因为计算机是使用电的设备。底层的存储设备只能识别电信号,电信号有2种状态,一种是带电状态,一种是不带电的状态。分别用1,和0 来对应。
binary:
二进制中只能有 0 和 1.
一个0 或者一个 1我们称之为 一位 1bit。是计算机最小的存储单元。
8bits --> 1byte 一个字节,八位二进制位。
1024bytes—>1KB
1024KB—>1MB
1024MB—>1GB
1024GB—>1TB.

5.一个二进制位可以表示几种状态:
2种:0 or 1
两个二进制位可以表示几种状态:
四种 00 01 10 11
三个二进制为可以表示一种状态:
八种 000 001 010 011 100 101 110 111

用四种进制来表示0-15

十进制 二进制 八进制 十六进制
0 0000 0 0
1 0001 1 1
2 0010 2 2
3 0011 3 3
4 0100 4 4
5 0101 5 5
6 0110 6 6
7 0111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 a
11 1011 13 b
12 1100 14 c
13 1101 15 d
14 1110 16 e
15 1111 17 f

d.机器码-原码-反码-补码:
对于一个数,比如,1,-1,等等,在内存中是以具体的什么样的形式存储的。
一种机器可以识别的,二进制的形式。

机器码:计算机能够直接识别的一种码制(一种编码的规则)。
机器码中又包含了几种不同的码制。

三种不同的机器码:原码,反码,补码。
不同的码制在展示相同的数据的时候,展示的形式不同

原码:是三种码制的基础。 0000 0000
以8bit 来表示一个数据。
规则:最高位(最左边的位)来代表符号位,0代表整数,1代表负数。后面的7位来代表数值位。
举个栗子:10—>0000 1010 -10—>1000 1010

但是计算机并不是以原码形式存储数据的。
原因:
1:-0 1000 0000 +0 0000 0000 有正0 和 负0 之分。
2:进行运算的时候,如果考虑到符号位的计算问题,那么计算的难度会增大,所有的计算都依赖于cpu的运算。增加cpu的设计的难度。

反码:是一种中间的码制。计算机不使用反码形式存储数据。
规则:正数的反码和原码一致。负数的转换的规则:从原码转换而来。符号位不变,其他数值位1变0 0变1.
-10: 原码:1000 1010 反码:1111 0101

补码:是计算机广泛采用的存储数据的机器码形式。
规则:正数的原码,反码,补码都是一样的,三码合一。
负数的补码:先对负数求原码,然后再求反码,然后再加1,就是补码。
-10:原码:1000 1010 -反码-> 1111 0101 --求补->1111 0110
-1:1000 0001 取反 1111 1110 求补 1111 1111

为什么使用补码呢?
1:补码没有+0 和 -0 之分。
0000 0000 1000 0000—>1111 1111—>1 0000 0000 溢出的高位忽略。
2:使用补码进行运算的时候,符号位就作为普通的数值位参与运算。会简化运算的规则,简化cpu的设计难度。

定律:补码的补码是原码,如何从补码还原为原码。

11111111111111111111111111110100
10000000000000000000000000001011
10000000000000000000000000001100

这篇就写到这,我整理下我的笔记,会把有用的干货都发出来。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值