20155208徐子涵 2016-2017-2 《Java程序设计》第2周学习总结
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周学习总结的更多相关文章
- 20155334 2016-2017-2 《Java程序设计》第九周学习总结
20155334 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章:整合数据库 16.1 JDBC入门 JDBC(Java DataBase Conn ...
- 20155321 2016-2017-2 《Java程序设计》第九周学习总结
20155321 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC简介 厂商在实现JDBC驱动程序时,依方式可将驱动程序分为四种类型: JDBC-OD ...
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...
- 20145213《Java程序设计》第一周学习总结
20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145330孙文馨 《Java程序设计》第一周学习总结
20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...
- 20145337 《Java程序设计》第九周学习总结
20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...
- 20145337 《Java程序设计》第二周学习总结
20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...
- 20145218《Java程序设计》第一周学习总结
20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...
随机推荐
- 【Jmeter_WebService接口】对项目中的GetProduct接口生成性能脚本
一.环境信息 https://xxx.xxx.svc?wsdl 用户名:username 密码:password 对其中的GetProduct接口进行测试 二.通过soapui获取soup请求信息 1 ...
- Django+Xadmin+Echarts动态获取数据legend颜色显示灰色问题已解决
前段时间做的使用Django的Xadmin后台和百度Echarts进行后台数据可视化,功能虽然实现,展示出来的legend图例,都是灰色的,只有鼠标放上去才会显示彩色的.百度都快被我刨穿了,看到有类似 ...
- spoj1811
题解: 后缀自动机 先把A的后缀自动机建好 然后用B再上面跑 如果不能转移就跳fail 如果可以就到下一个可行状态 代码: #include<bits/stdc++.h> using na ...
- [Leetcode 3] 最长不重复子串 Longest substring without repeating 滑动窗口
[题目] Given a string, find the length of the longest substring without repeating characters. [举例] Exa ...
- Linux如何从零开始搭建rsync+serync服务器(centOS6)
一.为什么要用Rsync+sersync架构? 1.sersync是基于Inotify开发的,类似于Inotify-tools的工具 2.sersync可以记录下被监听目录中发生变化的(包括增加.删除 ...
- CKEditor编辑器的使用
<div class="form-group" id="infolink-edier-div"> <label for="" ...
- 玩转X-CTR100 l STM32F4 l 定时器时间测量
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器 使用处理器内部硬件定 ...
- cxf http 代码自动生成
1.下载 cxf 直接进入镜像下载http://mirrors.tuna.tsinghua.edu.cn/apache/cxf/3.1.12/apache-cxf-3.1.12.zip 2.配置 CX ...
- 强化学习7-Sarsa
之前讲到时序差分是目前主流强化学习的基本思路,这节就学习一下主流算法之一 Sarsa模型. Sarsa 是免模型的控制算法,是通过更新状态动作价值函数来得到最优策略的方法. 更新方法 Q(S,A)=Q ...
- Oracle中sysdba身份和dba角色区别
sysdba身份登陆可以打开,关闭数据库,创建SPFILE,对数据库进行恢复操作等,而这些是DBA角色无法实现的:sysdba 是系统权限,dba是用户对象权限: sysdba,是管理oracle实例 ...