java计算机基础
一.二进制
1.byte占用8位,每位用0或1表示,能够表示256(2^8)个数据。
2.这8位分为符号位(最高位)和数值位(剩余七位),符号位0表示正数,1表示负数。
3.+127:0111 1111、+1:0000 0001、+0:0000 0000、-0(-128):1000 0000、-1:1000 0001、-127:1111 1111
计算机基础知识普及:原码、反码、补码
<1>计算机存储有符号的整数是都是存储它们的补码。Java语言都是有符号位的。
<2>正数和0的补码、反码是本身原码;所以对于正数来说,可以理解为不存在反码和补码。
<3>负数的反码是是符号位不变,其它位取反;二进制整数最终都是以补码形式出现,补码是在负数的基础上加1(符号位不变)。
<4>计算机中用补码进行加法运算和位移运算,结果如果是负数,要把结果变成反码加1才是真的结果(补码)。
<1>计算机存储有符号的整数是都是存储它们的补码。Java语言都是有符号位的。
<2>正数和0的补码、反码是本身原码;所以对于正数来说,可以理解为不存在反码和补码。
<3>负数的反码是是符号位不变,其它位取反;二进制整数最终都是以补码形式出现,补码是在负数的基础上加1(符号位不变)。
<4>计算机中用补码进行加法运算和位移运算,结果如果是负数,要把结果变成反码加1才是真的结果(补码)。
5.位移符号位参与移动,向右移1位近似表示除以2(取整,比如35>17,-35>-18),左移后正负不定
6.&&(逻辑与)与&(按位与), ||(逻辑或) 与 |(按位或)的区别,前者有短路功能
7.异或运算没有短路功能,对应不一样是1,一样是0(1^1=0,0^0=0,1^0=1,true^true=0 )
二.类
1.this和super:
(1).都是关键字,起代指作用 (2).在构造方法中必须出现在第一行
this: (基本)访问本类实例的属性和方法 (查找范围)先找本类,没有找父类 (特异)单独使用时,表示当前对象
supre: (基本)由子类访问父类的实例属性和方法 (查找范围)直接查找父类 (特异)在子类覆写父类方法时,访问父类同名方法