20165233 2017-2018-2 《Java程序设计》第五周学习总结

教材学习内容总结

ch07

  • 内部类:Java支持在一个类中声明另一个类,这样的类称为内部类,而包含内部类的类称为内部类的外嵌类。

  • 匿名类

    • 和某类有关的匿名类就是该类的一个子类,该子类没有明显地用类声明来定义,所以称为匿名类。

    • 和某接口有关的匿名类就是实现该接口的一个类,给子类没有明显地用类声明来定义,所以称为匿名类。

  • 异常类

    • Java方法调用时可能出现异常,利用try-catch语句来处理。
  • 断言:assert关键字

ch10

  • InputStream的子类创建的对象为字节输入流,每次调取方法按顺序读取源中内容,直到末尾或流被关闭。

  • OutputStream的子类创建的对象为字节输出流,同样是按顺序写入。

  • Reader的子类创建的对象为字符输入流,同样按顺序读入。

  • Write的子类创建的对象为字符输出流,同理。

  • File类

  • 文件字节输入、输出流

  • 文件字符输入、输出流

  • 缓冲流、随机流、数组流、数据流、对象流

  • 序列化与对象克隆

  • 使用Scanner解析文件

  • 文件锁

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

  • 问题1:throwthrows的区别是什么?
  • 问题1解决方案:throw这个关键字的作用是抛出异常;throws是方法可能抛出异常的声明。总的来说,一个方法在声明时可以使用throws关键字声明要产生的若干个异常,再用相应的异常类创建对象,并使用throw关键字抛出该异常对象。
  • 问题2:序列化是什么?
  • 问题2解决方案:序列化是Java中一种特殊的文本表示,序列化就是和Serializable接口相关的东西。序列化 (Serialization)将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间,对象将其当前状态写入到临时或持久性存储区。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。

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

  • 问题1:教材293页中的Example10_8.java的例子,import java.io.**;**的作用是什么?为什么使用**时,编译就会报错,写成*时,就能够正常编译、运行呢?

  • 问题1解决方案:这个问题暂时没有解决,没有找到原因,并且每次使用*都可以正常运行。
  • 问题2:教材284页中的Example10_3.java,Mac中找不到文本编辑器(Mac的记事本)的路径与可执行文件?
  • 问题2解决方案:在网上寻找过,但也都没有此问题的解答。

代码托管

上周考试错题总结

  • 错题1:下列关于构造方法叙述正确的是:D.带有返回值的方法一定不是构造方法。

原因:本题为多选题,漏选该选项,对于构造方法的判断条件掌握不全面。

理解情况:构造方法没有类型,没有返回值,且名字与它所在的类的名字完全相同。

  • 错题2:下列关于实例变量和类变量的说法错误的是:B.分配给不同对象的类变量占有不同的内存空间,改变其中一个对象的实例变量不会影响其他对象的实例变量。

原因:对于实例变量与类变量的一些细节知识点掌握不熟练。

理解情况:这是对“实例变量”的描述,而非“类变量”。错选为C.创建类的对象时,类变量不再重新分配内存。

  • 错题3:以下对重载描述错误的是B.构造方法不能重载。

原因:对该知识点不太清楚。

理解情况:已掌握。

  • 错题4:下列代码的执行结果均为true.
int i = 128;
Integer i2 = 128;
Integer i3 = new Integer(128);
System.out.println(i==i2);
System.out.println(i==i3);

原因:未掌握Integer的类型。

理解情况:Integer类型的对象包含一个int类型的字段,Integer会自动拆箱为int,因此值相等。

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

本周学习内容中间跨度有些大,越过8、9章,学习第10章时,发现有没有学到过的知识点。第7章听课的时候没有那么难理解了,但是要注意到细节的地方特别多,在看程序题的时候还是有些费劲。第10章在流的这部分内容相近,也较好掌握,但是感觉文件锁等知识点难度增大了。

20165233 Java第七、十章学习总结的更多相关文章

  1. “全栈2019”Java第七十章:静态内部类详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  2. 20165210 Java第七周学习总结

    20165210 Java第七周学习总结 教材内容学习 第十一章学习总结 连接数据库: 1. 下载JDBC-MySQL数据库驱动 2. 加载JDBC-MySQL数据库驱动 3. 连接数据库 4. 注意 ...

  3. 20145304 Java第七周学习报告

    20145304<Java程序设计>第七周学习总结 教材学习内容总结 1.时间的度量: 格林威治标准时间(GMT)通过观察太阳而得,其正午是太阳抵达天空最高点之时,因地球的公转与自传,会造 ...

  4. JAVA 第七周学习总结

    20175308 2018-2019-2 <Java程序设计>第七周学习总结 教材学习内容总结 本周学习第八章:常用实用类 String类: String类位于java.lang包中,被定 ...

  5. 20165326 java第七周学习笔记

    第七周学习笔记 MySQL(数据管理系统)学习 知识点总结: 不能通过关闭MySQL数据库服务器所占用的命令行窗口来关闭MySQL数据库. 如果MySQL服务器和MySQL管理工具驻留在同一台计算机上 ...

  6. 20165233 Java第四章学习总结

    20165233 2017-2018-2 <Java程序设计>第三周学习总结 教材学习内容总结 基础 类:包括类声明和类体. 其中类声明的变量被称作对象变量,简称对象. 类体中包括两部分: ...

  7. 201521123093 java 第七周学习总结

    1. 本周学习总结 2. 书面作业 1.ArrayList代码分析 1.1 解释ArrayList的contains源代码 //contains()方法 public boolean contains ...

  8. Java第七周学习总结

    1. 本周学习总结 以你喜欢的方式(思维导图或其他)归纳总结集合相关内容. 参考资料: XMind 2. 书面作业 ArrayList代码分析 1.1 解释ArrayList的contains源代码 ...

  9. 20165233 2017-2018-2 《Java程序设计》第七周学习总结

    20165233 2017-2018-2 <Java程序设计>第七周学习总结 教材学习内容总结 ch11 下载XAMPP 基本操作:连接数据库 基础:查询操作,更新.添加与删除操作 重点: ...

随机推荐

  1. 这些HTML、CSS知识点,面试和平时开发都需要 No8-No9(知识点:媒体操作、构建表单)

    系列知识点汇总 这些HTML.CSS知识点,面试和平时开发都需要 No1-No4(知识点:HTML.CSS.盒子模型.内容布局) 这些HTML.CSS知识点,面试和平时开发都需要 No5-No7(知识 ...

  2. hdu1527威佐夫博弈

    参考博客 https://hrbust-acm-team.gitbooks.io/acm-book/content/game_theory/wei_zuo_fu_bo_yi.html 满足 ,后手必胜 ...

  3. poj3734矩阵快速幂

    挑战上面的题目,感觉脑洞很大 分别找红蓝个数全为偶,全为奇,一奇一偶的个数ai,bi,ci 转移矩阵是| 2 1 0 |,是一个对称矩阵(会不会有什么联系.) | 2 2 2 | | 0 1 2 | ...

  4. UVA-1610 Party Games (构造)

    题目大意:给出一系列字符串,构造出一个字符串大于等于其中的一半,小于另一半. 题目分析:取大小为中间的两个a,b(a<b).实际上就是找出第一个小于b的同时大于等于a的字符串,直接构造即可.要注 ...

  5. python学习笔记(五)---sublime text 多行代码注释快捷键

    转载网址:https://blog.csdn.net/mycms5/article/details/70194045/ 多行选择后按下ctrl+/ 选择类 Ctrl+D 选中光标所占的文本,继续操作则 ...

  6. Oracle管道函数(Pipelined Table Function)实现的实例

    1. 简单的例子(返回单列的表) 1>创建一个表类型 create or replace type t_table is table of number; 2>创建函数返回上面定义的类型 ...

  7. RALL资源获取初始化,删除器

    body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...

  8. epoll模型边沿触发

    body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...

  9. git 解决冲突问题

    问题描述: 一般来说,只要多人提交同一仓库,必然会有冲突的发生. Git解决 利用git解决冲突很简单,最常规的方法莫过于工作之前先更新整个project,完成之后及时提交.然而尽管这样做,也难免有人 ...

  10. iframe相关知识

    iframe 不带边框的iframe因为能和网页无缝的结合从而不刷新页面的情况下更新页面的部分数据成为可能,可是 iframe的大小却不像层那样可以“伸缩自如”,所以带来了使用上的麻烦.一般通过百分比 ...