20172306《Java程序设计》第五周学习总结
20172306 2016-2017-2 《Java程序设计》第五周学习总结
教材学习内容总结
第五章主要学习了if以及while的语句的运用
运算符:== 代表相等,是两个之间的内存地址相等;这个地方我知道了=和是不同的,=代表的是赋值,将某值赋给某值,这两者是有很大区别的。
浮点数比较:绝对值小于精度,接近相等
字符串比较string1 . equals(string2),尽管是比较的是字符串,但是实质上是比较字符。还有compareTo 也可以用来比较字符串。这个在前面有学习。
算数运算符优先于相等性运算符和关系型运算符,在例题中,while (str.charAt(left)str.charAt(right) && left< right)这里面,先要满足&&左面和右面,再考虑&&。
第六章主要学习了switch语句,其中不可缺少的是default,而break不是必不可少的
条件运算符,主要要了解,条件运算符只是一个运算符而不是语句。
do的语句,主要和while的不同是do先循环再判断,而while是先判断再循环。
for语句,我个人觉得for是一个很方便的语句,而且比较容易懂。
教材学习中的问题和解决过程
- 问题1:在5.4.1中,无限循环中有一个下溢错误,我不懂这个下溢错误是什么意思?
- 问题1解决方案:我在百度上查找了有关的知识,自我理解就是数据溢出包括上溢和下溢,上溢就是说你想用一个int类型来保存一个非常非常大的数,而这个超出了int类型所能表示的最大的数的范围,下溢也是这个道理,你要用double来表示一个非常非常小的数,超出它所能表示的最小数时,就会发生数据溢出错误。
- 问题2:在学习回文的时候,我有这样的一个疑问,就是在我运用这个回文的时候,是否只能利用字符,而不可以用空格、符号?对于回文来说,是否对于字符的大小写的要求也很严格?
- 问题2解决方案:对于这个问题,我现在知道,因为java中是对大小写很严格的一种语言,所以回文也依旧如此,而对于是否可以运用空格和符号,我觉得是可以的,只是不经常利用,而在判断回文时,这些是否作为判断标准,这一点我还在查找。
- 问题3:上篇博客中,我有提到我不是很理解形参和实参的差别,这周在看例题的时候,我依旧对于这两者很模糊,尽管上篇博客中我写了它的定义,也理解了但是用的时候,就不能准确判断。
- 问题3解决方案:问了同学,也看了概念,基本的理解是,一般编写类中有形参,在编写类中,在你声明的括号中一般是形参,在你要运用这个类时,声明的括号里的应该就为实参。但是这个问题,我觉得自己还是理解的不透彻。
代码调试中的问题和解决过程
- 问题1: 本来我是要编12*12的乘法表,以上是我编的和运行出来的样子。都是相同的数字进行相乘,我就很不解。
- 问题1解决方案:我觉得在自己写一个程序的时候,不断地尝试是一个很不错的过程。上面的虽然运行成功了,但是却和我要的不同,我看了。主要是因为,a 加1时,b 也同时加了1;导致在循环的时候,两个数都在不断地增加,所以就会出现上面的情况,后来我用了两个判断语句,成功运行了12*12的乘法表
- 问题2:不知道有没有人和我一样出现了这样的错误,
- 问题2解决方案:这样的问题,主要是在运用if的嵌套语句的时候,经常会因为某些原因,导致{ 或}少了或者多了。还有,if之后,你可以没有else及其后续,但是如果你有else,则你就要编上else之后应该输出什么。这个代码我没有照,不过这是我出现这样情况的主要问题,现在已经解决了
- 问题3:我在编写石头剪子布的时候,出现了很多问题,但是都根据错误一点一点解决了,这是我其中的一些错误
- 问题3解决方案:第一个错误,是因为在前面我没有定义wanjia这个变量;第二个问题是我的com1是玩家对于Scanner 的一个对象,而当时我只声明了一个对象,我想要有输出终止的程序,所以后来我又重新声明了一个对象。对于第三个问题,我知道了对于我程序中的a b c 这个只是程序中的一个变量,如果你用键盘输入这个变量,是什么效果都没有的,而要输入的是实际的参数。
代码托管
上周考试错题总结
- 1.In order to preserve encapsulation of an object, we would do all of the following except for which one?
A Make the instance data private
B Define the methods in the class to access and manipulate the instance data
C Make the methods of the class public
D Make the class final
E All of the above preserve encapsulation 本题选D,
这题意思是为了封装为了保持一个物体的封装,除了哪一个之外,我们还会做所有的事情?
a.使实例数据私有
b.定义类中的方法来访问和操纵实例数据
c.使类的方法公开
d.用final在类中
e.以上所有的保存封装 封装的主要目的就是不让别人修改和访问自己封装的东西。这里面final不一定必要;对于第三项,访问和操纵实例数据的方法被公开,以便其他类可以使用该对象。 - 2.Consider a method defined with the header: public void foo(int a, int b). Which of the following method calls is legal?
A foo(0, 0.1);
B foo(0 / 1, 2 * 3);
C foo(0);
D foo( );
E foo(1 + 2, 3 * 0.1); 本题选B,这道题,因为参数都是整数型,所以排除了E,因此选了B - 3.The expressions that are passed to a method in an invocation are called(在调用中传递给某个方法的表达式被称为)
A actual parameters(实际参数)
B formal parameters(形式参数)
C formal arguments(正式的参数)
D formals
E any of the above 本题选A。formals(正式参数、正式参数)是在方法的标题中给出的。实际的参数(实际参数、实际参数)是实际在调用中传输到方法的表达式。 - 4.What happens if you declare a class constructor to have a void return type?(在类的构造函数时有了void返回类型会发生什么)
A You'll likely receive a syntax error(你可能会得到语法的错误)
B The program will compile with a warning, but you'll get a runtime error*(你编译的时候会有警告,在运行时会有错误)
C There's nothing wrong with declaring a constructor to be void(没有任何的问题,在你使用void时)
D The class' default constructor will be used instead of the one you're declaring(类的默认构造函数将被使用,而不是您所声明的)
E None of the above 本题选D,这里面,在构造类中没有void的返回类型,但是当你加上了,它就会变成普通的而不是你所声明的,但是在这里面仍旧是有构造函数的,系统中会默认。 - 5.A method defined in a class can access the class' instance data without needing to pass them as parameters or declare them as local variables.
A true
B false 本题选A 类中定义的方法可以访问类的实例数据,而无需将它们作为参数传递,也无需将它们声明为局部变量。实例数据对于所有类的方法都是全局可用的,因此这些方法不需要作为参数接收它们,或者在本地声明它们。如果在方法中本地声明与实例数据相同的变量,那么实例数据将在该方法中“隐藏”,因为引用将是本地变量。 - 6.Defining formal parameters requires including each parameters type.(定义正式的参数需要包括每个参数类型。)
A true
B false 为了让编译器检查方法调用是否正确,编译器需要知道传递的参数的类型。因此,所有正式的参数(在方法头中定义的参数)必须包括它们的类型。这是使Java成为强类型语言的一个因素。我觉得应该正确理解正式的参数,因为它是方法头定义的参数,所以要保证其完整性 - 7.Accessors and mutators provide mechanisms for controlled access to a well-encapsulated class.(存取器和突变器提供了对一个良好封装的类进行受控访问的机制。)
A true
B false 本题选A 存取器提供对那些否则无法访问的变量的读访问。突变器提供对其他难以访问的变量的写访问权 - 8.During program development, software requirements specify
A how the program will accomplish the task
B what the task is that the program must perform
C how to divide the task into subtasks
D how to test the program when it is done
E all of the above 本题选E 在程序开发期间,软件需求指定a.程序将如何完成任务b.这个程序必须执行的任务是什么c.如何将任务划分为子任务d.如何在完成后测试程序e.上面所有的,这道题在书上是有的。 - 9.Static methods cannot
A reference instance data
B reference non-static instance data
C reference other objects
D invoke other static methods
E invoke non-static methods 本题选B 静态方法不能a.引用实例数据b.引用非静态实例数据c.引用其他对象d.调用其他静态方法e.调用非静态方法,这也是书上写的。 - 10.Inheritance through an extended (derived) class supports which of the following concepts?
A interfaces
B modulary
C information hiding
D code reuse
E correctness 本题选D 通过扩展(派生的)类的继承支持下列概念中的哪一个?a.接口b.modularyc.信息隐藏d.代码重用e.正确性 - 11.Which of the following interfaces would be used to implement a class that represents a group (or collection) of objects?
A Iterator
B Speaker
C Comparable
D MouseListener
E KeyListener 本题选A 下列哪一种接口将被用来实现一个表示对象组(或集合)的类?a.迭代器b.演讲者c.类似的d.MouseListenere.KeyListener - 12.The goal of testing is to
A ensure that the software has no errors
B find syntax errors
C find logical and run-time errors
D evaluate how well the software meets the original requirements
E give out-of-work programmers something to do 本题选C 测试的目标是a.确保软件没有错误b.发现语法错误c.查找逻辑和运行时错误d.评估软件满足原始需求的程度e.给不工作的程序员做点什么 - 13.Interface classes cannot be extended but classes that implement interfaces can be extended.
A true
B false 本题选B 接口类不能被扩展,但是实现接口的类可以被扩展。a.真正的b.假 解释:任何类都可以被扩展,无论它是一个接口,还是实现一个接口,或者两者都没有。唯一的例外是,如果该类被显式地用“final”这个词进行修饰,在这种情况下,它不能被扩展。 - 14.All objects implement Comparable.
A true
B false 本题选B 所有对象实现可比性。a.真正的b.假 解释:可比性是一个接口,类必须定义compareTo方法,并显式地声明它实现了可比较的可比较的实现。大多数类都没有实现可比性
其他(感悟、思考等,可选)
这周的学习我觉得自己用的时间比上一次用的时间多一些。但是回顾自己之前的学习和考试,总是倒数的几名,还是很难过的。自己总结一下,归根结底就是自己其他的事情太多了,导致自己学习java的时间太少了,缺少琢磨和反思的过程,这是我知道的自己在学习这科方面的问题。比较后悔自己低估了java,高估了自己。我觉得慢慢学吧,很多东西都是循序渐进的过程吧,而且我觉得java在编程时真的是一个不断去改动的过程,不断地发现错误,不断地去尝试,最终得到自己想要的,可能过程中会出现很多很多错误,但是最终还是会成功。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 193/200 | 1/1 | 20/20 | |
第二周 | 193/440 | 1/1 | 22/38 | |
第三周 | 445/895 | 2/2 | 20/60 | |
第四周 | 885/1780 | 1/1 | 43/90 | |
第五周 | 775/ 2555 | 1/1 | 55/120 |
参考资料
20172306《Java程序设计》第五周学习总结的更多相关文章
- 201521123025<java程序设计>第五周学习总结
1. 本周学习总结 2. 书面作业 1.代码阅读:Child压缩包内源代码 1.1 com.parent包中Child.java文件能否编译通过?哪句会出现错误?试改正该错误.并分析输出结果. 1.2 ...
- Java程序设计第五周学习总结
1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 1.2 可选:使用常规方法总结其他上课内容. 2. 书面作业 **代码阅读:Child压缩包内源代码 Child.java源代 ...
- 20172306 《Java程序设计》第二周学习总结
20172306<Java程序设计>第二周学习总结 教材学习内容总结 这一周的学习,我觉得我比上一周认真多了,而且我突然发现慢慢学习的过程中,以前有一些多余自己打出来的东西,有了更清晰的认 ...
- 20172325 2018-2019-2 《Java程序设计》第九周学习总结
20172325 2018-2019-2 <Java程序设计>第九周学习总结 教材学习内容总结 图的定义 图是由顶点集(VertexSet)和边集(EdgeSet)组成,针对图G,顶点集和 ...
- 20172325 2017-2018-2 《Java程序设计》第九周学习总结
20172325 2017-2018-2 <Java程序设计>第九周学习总结 教材学习内容总结 异常 1.学习了异常的基本概念: 2.区分异常与错误: 一个异常是指一个定义非正常情况或错误 ...
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145236 《Java程序设计》第九周学习总结
20145236 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API ...
- 20155304田宜楠2006-2007-2 《Java程序设计》第一周学习总结
20155304田宜楠2006-2007-2 <Java程序设计>第一周学习总结 教材学习内容总结 - 浏览教材,根据自己的理解每章提出一个问题 第一章 除了书上提到的开发工具还有什么适合 ...
- 20155303 2016-2017-2 《Java程序设计》第二周学习总结
20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...
随机推荐
- BeanFactory的实现原理
先来看看Java代码获取Spring中Bean的代码(一共有五种方式,这里只展示其中一种方法): 有没有发现上面的代码与利用反射实现工厂模式的代码很相似.对,你没有看错,Spring中的BeanFac ...
- linux下安装zabbix服务器
1.lnmp环境安装(linux.nginx.mysql.php) 2.安装php所需模块以及其他模块 yum install -y php-bcmath yum install -y php-mbs ...
- 苹果笔记本 如何配置成php开发系统
方法一 启动内置的apace 打开终端输入命令 停止服务:sudo /usr/sbin/apachectl stop 开启服务:sudo /usr/sbin/apachectl start 重启服务: ...
- node-pre-gyp install --fallback-to-build 错误
[node-pre-gyp install --fallback-to-build 错误] npm install bcrypt时遇上错误 此时,安装node-gyp npm install -g n ...
- Emulating private methods with closures
[Emulating private methods with closures] JavaScript does not provide a native way of doing this, bu ...
- Activity 与 Task
[Activity 与 Task] A task is a collection of activities that users interact with when performing a ce ...
- excel表格输入思想
1.创建工作簿 SXSSFWorkbook wb = new SXSSFWorkbook(); //#设置单元格的垂直居中,水平居中,字体颜色 2.创建sheet Sheet sheet = wb ...
- 《xss跨站脚本剖析与防御》实验笔记
1.书籍<xss跨站脚本剖析与防御>上介绍的xss测试代码 <img src="javascrpt:alert('xss');">, <table b ...
- SSL、TLS中间人攻击
生成私钥 生成一个ca.key私钥签名 然后用私钥生成一个伪造证书服务器的根证书 生成一个伪造证书服务器的根证书ca.crt 在攻击主机启动路由转发功能 或者echo 1 > /proc/sys ...
- centos搭建OPENldap
LDAP是轻量目录访问协议,英文全称是Lightweight Directory Access Protocol,一般都简称为LDAP.它是基于X.500标准的,但是简单多了并且可以根据需要定制.与X ...