20155208徐子涵 2016-2017-2 《Java程序设计》第2周学习总结

教材学习内容总结

第三章 基础语法

3.1 类型、变量与运算符

• 关键字:在定义java文件名的时候要避免这些关键字的出现,因为他们在java程序语言中有特定的意义。

用于定义访问权限修饰符的关键字:private、protected 、public

用于定义类,函数,变量修饰符的关键字:abstract、 final、 static、 synchronized

用于定义类与类之间关系的关键字:extends、 implements

用于定义建立实例及引用实例,判断实例的关键字:new、 this、 super、 instanceof

用于异常处理的关键字:try 、catch、 finally、 throw 、throws

用于包的关键字:package、 import

其他修饰符关键字:native 、strictfp 、transient、 volatile、 assert

• 标示符:需注意数字不可以开头、不可以使用关键字。(在起文件名的时候最好采用正规格式:首字母大写其余小写,便于辨认) •类类型

•变量 :数据暂存位置在程序语言中称为变量,变量在命名时不可使用数字作为开头,也不能使用一些特殊字符,而变量名称不可与Java关键词同名,也不可与Java保留字同名。

•运算符

•算术运算 :+、-、*、/、%

• 关系运算:>、>=、<、<=、==、!=(注意不要对浮点数进行相等性运算)

• 条件运算符: 条件表达式 ? 成立时返回值:失败时返回值

• 逻辑运算:与(&&)、或(||)、非(!)(运算结果是boolean值:true或false)

• 位运算 :运算结果为位串(位向量),常用于掩码(Mask)运算

• 与(&):全1为1,有0则0

• 或(|):全0为0,有1则1

• 非(~):书上说是补码,按我们的习惯应该是反码

• 异或(^):相同为0,不同为1

• 左移(<<):最右补0

• 算术右移(>>):右移后,正数最高位补0,负数最高位补1

• 逻辑右移(>>>):右移后,最高位总是补0 • 递增、递减:i++、i--、++i、--i

• 赋值:=、+=、-=、*=、/=、%=、&=、|=、^=、<<=、>>=

注意:x=y是指将y的值赋给x,而x==y是比较x与y是否相等。

• 类型转换

• 短->长(widening)是安全的,长->短(narrowing)必须强制转换

• 类型转换 •短->长(widening)是安全的,长->短(narrowing)必须强制转换

3.2流程控制

•if...else条件式:如果条件式不成立并不想做任何事,则else可以省略 •if...else if •switch条件式:每个case语句后面都要加上“brak;”,最后面可加“default”,但若没有默认要处理的动作,可以省略"default" 若case中没有任何描述,也没有使用break,就继续往下面的语句执行,直到遇到break离开switch为止 •foe循环:for(初始式;执行结果必须是boolean的重复式;重复式) 在一个描述区块中若想写两个以上的描述句,则使用逗号“,”作分隔 •while循环:循环进行前就进行条件判断 •do...while循环:先执行动作,再判断是否需要重复

•顺序

•分支:if、if...else、if...else if、switch...case(如果判断的具体数值不多,且符合byte、short、int、char这四种类型,建议使用switch语句;如果是区间判断,或对结果为布尔类型判断,则应使用if语句)

•循环:for、while、do...while

教材学习中的问题和解决过程

问题:书上p63位运算中示例程序:

byte number = 0;

System.out.println(~number);

显示结果为-1

解决过程:

~表示补码运算,补码运算是将所有位0变1,1变0,byte占内存1字节,number储存 的0在内存中是位00000000,经补码运算就变成11111111,这个数在计算机中用整数表示则为-1。

代码调试中的问题和解决过程

由于开始不太熟悉java程序的编写,代码都是按照书上的代码进行练习的,没有出现大的问题,在编译运行的时候只出现了一些细节性的小问题,类似于名称打错、括号只打了一个、一些标点用的是中文表标点的小错误,以后练习的时候一定多注意这些细节。

其他(感悟、思考等,可选)

这周的学习我已经开始接触if、switch等语句,开始试着按照书上的程序编写程序了,感觉又接触了一些新的东西,感觉收获颇丰。相信我以后还会继续努力的。

学习进度条

  代码行数(新增/积累) 博客量(新增/积累 学习时间(新增/累积)
目标 5000行 30篇 400小时
第一周 16/16 1/1 8/8
第二周 120/120 2/2 12/12

代码托管截图

参考资料

20155208徐子涵 2016-2017-2 《Java程序设计》第2周学习总结的更多相关文章

  1. 20155334 2016-2017-2 《Java程序设计》第九周学习总结

    20155334 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章:整合数据库 16.1 JDBC入门 JDBC(Java DataBase Conn ...

  2. 20155321 2016-2017-2 《Java程序设计》第九周学习总结

    20155321 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC简介 厂商在实现JDBC驱动程序时,依方式可将驱动程序分为四种类型: JDBC-OD ...

  3. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  4. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  5. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  6. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  7. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  8. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  9. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  10. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

随机推荐

  1. python字典和列表的高级应用

    1.将序列分解为单独的变量 1.1问题 包含n个元素的元组或列表.字符串.文件.迭代器.生成器,将它分解为n个变量 1.2方案 直接通过赋值操作 要求:变量个数要等于元素个数 当执行分解操作时,有时需 ...

  2. pre强制 自动换行

    转自:http://www.16sucai.com/2010/10/941.html <pre> 元素可定义预格式化的文本.被包围在 pre 元素中的文本通常会保留空格和换行符.而文本也会 ...

  3. Jquery如何禁止鼠标右键菜单

    jquery中使用contextmenu事件,如果返回true,则允许右键菜单:如果返回false,则禁止右键菜单 导入文件 <script type="text/javascript ...

  4. Spring Boot整合@Scheduled定时计划

    原文地址:https://blog.csdn.net/justry_deng/article/details/80666508 修改部分: SpringBoot集成了@Scheduled的相关依赖(o ...

  5. Ubuntu 14.04下如何更换更新源(更新为163源)

    之前的安装ubuntu桌面版的之后安装yum,vim等会遇到一些问题, 比如:Ubuntu 14.04下如何更换更新源(更新为163源) 解决: http://jingyan.baidu.com/ar ...

  6. 公司最近把开发人员的系统全部改为windows了

    公司最近把开发人员的开发环境全部改为windows了,唯一linux系统(一位做python 开发的同事自己安装的),被要求下午下班前改为windows 系统,windows 是公认的不适合开发,我家 ...

  7. PHP和Mysql事物处理

    这几天做支付的时候,又用到了事物,为了方便自己以后查看,今天闲的没事就把以前的东西整理下.(其中引用别人的东西,在这里谢谢他们贡献的代码!) 一.事务处理概述: 事务:是若干事件的集合 事务处理:当所 ...

  8. java动手动脑2

    仔细阅读示例: EnumTest.java,运行它,分析运行结果? 你能得到什么结论?你掌握了枚举类型的基本用法了吗? 运行结果: 第一个false是判断s和t是否引用同一个对象,第二个false是判 ...

  9. Kubenates熟悉

    Kuberetes命令,可用于查看信息和排查故障. kubectl cluster-info --context dev 查看master和服务的地址 kubectl config view 查看ku ...

  10. 使用keytool生成公钥、私钥、证书并且读取出来,使用私钥签名jar并验证(转)

    参考链接:http://happyqing.iteye.com/blog/2139504 :https://blog.csdn.net/arjelarxfc/article/details/52461 ...