[阶段一]Java基础语法-数据类型(1)

课程内容

距离上次上课已经有一周了,学生因遇到期末,上课时间上比较难协调,但依旧很高新他们能坚持来上课。非常感谢班长麦宁均,很负责任的一小伙!本次上课内容以理论为主,下午课程有点枯燥,晚上内容有点烧脑,最后被自己挖的坑给坑了!

  1. java语法基础概述
  2. java package (包)
  3. java 修饰符(可访问修饰符、不可访问修饰符)
  4. java标识符
  5. java关键字(保留字)
  6. java注释(3种注释方式)
  7. java是强类型语言 跟javascript弱类型进行强烈对比
  8. 堆空间和栈空间介绍
  9. 变量定义与初始化
  10. 变量作用域
  11. 整数类型介绍 byte, short,int,long
  12. 计算机中存储数据的方式(二进制)
  13. 原码,反码,补码介绍

课堂作业

利用二进制描述78,-123的原码、反码、补码
要求在博客里面描述清楚过程

数值:78
正数的原码、反码、补码都是一样的

原码:0100 1110 
反码:0100 1110
补码:0100 1110

数值:-123
负数在计算机中以补码的形式存在

原码:1111 1011
反码:1000 0100
补码:1000 0101(取反加一)

自我提升

在跟学生交流的时候,提到两个问题尚未理解清楚,特记录在此。
问题一:二进制如何表示 -128 ?
这个问题可以从两个方面去理解,可以参考下面的文章,总结的比较好,个人倾向于简单理解。
“同余模“方案和“约定“方案
http://www.cnblogs.com/zhangziqiu/archive/2011/03/30/ComputerCode.html

问题二:下面的输出结果如何理解

byte b2=(byte)(130); //结果b2输出-126

首先,在java里面默认计算结果都是int类型的,int类型占4个字节共32位,因此这个int类型的整数二进制表示方式如下:

00000000 00000000 00000000 10000010 //2^7+2^1 所得

然而,经过从 int 转成 byte,系统自动截取了最后8位作为结果,也就是 1000 0010(补码),它显然是个负数

补码:1000 0010 
原码:1111 1110 (补码减一,再取反),最后结果就是-126

课件

02.Java基础语法-概述.pptx
03.Java基础语法-数据类型.pptx

你可能感兴趣的:(java)