20155333 2016-2017-2 《Java程序设计》第4周学习总结
20155333 2016-2017-2 《Java程序设计》第4周学习总结
教材学习内容总结
- 继承基本上就是避免多个类间重复定义的共同行为,在Java中,子类只能继承一个父类。
- private成员会被继承,只不过子类无法直接存取,必须通过父类提供的方法来存取(如果父类愿意提供访问方法的话)。
- 使用是一种(is-a)原则,就可以判断何时编译成功,何时编译失败,以及将扮演(Cast)看作叫编译程序住嘴语法,并留意参考的对象实际类型,就可以判断何时编译成功,何时会抛出ClassCastException。
- 在重新定义父类中某个方法时,子类必须撰写与父类方法中相同的签署。
- 如果在子类中某个方法前标注@Override,表示要求编译程序检查,该方法不是真的重新定义了父类中某个方法,如果不是的话,就会引发编译错误。
- 如果某方法区块中真的没有任何程序代码操作,可以使用abstract标示该方法为抽象方法,该方法不用撰写{}区块,直接“;”结束即可。
- 子类如果继承抽象类,对于抽象方法有两种做法,一种做法是继续标志该方法为abstract(该子类因此也是个抽象类,必须在class前标示abstract);另一种做法就是操作抽象方法。
- 被声明为protected的成员,相同包中的类可以直接存取,不同包中的类可以在继承后的子类直接存取。
- 在Java中,如果想取得父类中的方法定义,可以在调用方法前,加上super关键字。可以使用super关键字调用的父类方法,不能定义为private(因为这就限定只能在类内使用)。
- Java中有三个权限关键字,public、protected和private,有四个权限范围,依权限大小来区分,就是private、无关键字、protected与public。
- 重新定义方法要注意,对于父类中的方法权限,只能扩大但不能缩小。
- 如果没有重新定义equals(),使用equals()方法时,作用等同于==,所以要比较实际相等性,必须自行重新定义。
- 如果class前使用了final关键字定义,那么表示这个类是最后一个了,不会再有子类,也就是不能被继承。
- 对于“定义行为”,在Java中可以使用interface关键字定义。
- 类要操作接口,必须使用implements关键字。操作某接口时,对接口中定义的方法有两种处理方式,一是操作接口中定义的方法,二是再度将该方标识为abstract。
- 在JAva中,类可以操作两个以上的类,也就是拥有两种以上的行为。类可以同时继承某个类,并操作某些接口。
- 接口可以继承别的接口,也可以同时继承两个以上的接口,同样也使用extends关键字,这代表了继承父接口的行为。
教材学习中的问题和解决过程
问题1. 依据什么来决定使用那个权限?
解决:设计时使用哪个权限,是依经验或团队讨论而定,如果一开始不知道使用哪个权限,就先使用private,以后视需要再放开权限(如何放开权限?)。
问题2. 两个接口都有定义的方法是否表示不同的行为?
解决:我百度了一下,但还是不太懂。
代码调试中的问题和解决过程
问题1. 课本179页的Guest不能显示访客名单


未解决!
代码托管
- 代码提交过程及代码量截图:


在使用IDEA的Git Repository push时出现提示:
==push to orijin/master was rejected==
通过百度和不断尝试成功解决了问题。
上周考试错题总结
- Linux Bash中,(grep )命令可以进行全文搜索。
- ~0b1010的十进制值是(-11)
- double d = 0.1 + 0.1 + 0.1, System.out.println(i);的结果是0.3. (X)
- System.out.println(“”+52+25);的结果是(5225)
- System.out.println(52+25+””);的结果是(77)
- p86 Guess.java中guess的值无法输入12。(X)
- Java中,=与==并没有在基本类型和类类型的不同。(OK)
- 两个Integer对象比较大小,可以使用(comareTo())方法
- 可以使用java.util.Arrays的(fill())方法把数组初始化成相同的值。
- Java中的多维数组都是由(一维数组组成)。
- “30”转化为byte类型的30的语句是(Byte.parseByte(“30”);)。
- Java中类总会有默认构造方法。(X)
- Java中成员方法中引用成员变量,要使用(this)关键字。
其他(感悟、思考等,可选)
xxx
xxx
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第一周 | 12/12 | 1/4 | 20/20 | |
| 第二周 | 64/76 | 1/5 | 22/42 | |
| 第三周 | 560/636 | 1/6 | 22/64 | |
| 第四周 | 532/1168 | 1/7 | 20/84 |
尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。
计划学习时间:25小时
实际学习时间:20小时
改进情况:感觉自己可能在时间计划上存在问题,并未完成本周计划。
参考资料
20155333 2016-2017-2 《Java程序设计》第4周学习总结的更多相关文章
- 20155333 2016-2017-2 《Java程序设计》第九周学习总结
20155333 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC(Java DataBase Connectivity) 驱动的四种类型 JDBC- ...
- 20155333 2016-2017-2《Java程序设计》第二周学习总结
20155333 2016-2017-2<Java程序设计>第二周学习总结 教材学习内容总结 1. Java 类型系统:基本类型和类类型(参考类型) 2. 基本类型: 整数:short整数 ...
- 20155333 2016-2017-2 《Java程序设计》第一周学习总结
<java程序设计>第一周学习总结 学习目标 •了解java基础知识 •了解JVM.JRE与JDK,并下载.安装.测试JDK •了解PATH.CLASSPATH.SOURCEPATH的作用 ...
- 20155312 2016-2017-2 《Java程序设计》第九周学习总结
20155312 2016-2017-2 <Java程序设计>第九周学习总结 课堂内容总结 两个类有公用的东西放在父类里. 面向对象的三要素 封装 继承 多态:用父类声明引用,子类生成对象 ...
- 20155201 2016-2017-2 《Java程序设计》第九周学习总结
20155201 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC全名JavaDataBaseConnecticity,是Jav ...
- 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程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...
随机推荐
- java继承-静态绑定和动态绑定
静态绑定和动态绑定: 静态:程序执行前方法已经被绑定,针对java简单可以理解为程序编译器已的绑定(静态绑定)java当中的方法是final.static.private构造方法都是前期绑定 动态:运 ...
- Modal实现页面跳转和控制器数据传递
一.Model跳转的实现 1.新建工程 2.新建View控制器和导航控制器 (1)为拖控件,两个view一个navigation; 如图: (2)view的“GotoTwo”按键添加Segues到Na ...
- 3、Android-全局大喇叭-广播机制
所谓的官博机制可以理解成为1对多的概念 即一个喇叭所有的人都能听到(统一范围内) 为了便于及逆行系统级别的消息通知 Android引入了一套广播机制 而且更容易进行实现. 3.1.广播机制的简介 再A ...
- 《metasploit渗透测试魔鬼训练营》学习笔记第七章--社会工程学
五.社工工程学 5.1社会工程系框架 5.1.1信息搜集 maltego是一个高度自动化的信息搜集工具,集成在BT5中,如果国内网络环境使用时 ...
- mvc數據遷移
在本节中,我们将使用Entity Framework Code First 数据迁移功能将模型类的改变应用到数据库中. 默 认情况下,当我们使用Entity Framework Code First ...
- 6 spark 存储体系 --内存管理
6.5 memoryMode
- Dubbo实践(一)入门示例
dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案.简单的说,dubbo就是个服务框架,如果没有分布式的需求,其实是不需要用的,只有在分布式的时候 ...
- PAT——1072. 开学寄语(20)
下图是上海某校的新学期开学寄语:天将降大任于斯人也,必先删其微博,卸其QQ,封其电脑,夺其手机,收其ipad,断其wifi,使其百无聊赖,然后,净面.理发.整衣,然后思过.读书.锻炼.明智.开悟.精进 ...
- lwip TCP client 客户端 & FreeRTOS
static void tcpecho_thread(void *arg) { ip_addr_t serverIpAddr; struct netbuf *buf; void *data; u16_ ...
- linux crontab 计划任务设置 (简结)
命令: crontab -l 查看当前运行的计划任务 crontab -e 编辑当前运行计划任务 修改或添加 VIM编辑器用法:按 i 键进入编辑文本状态, esc 结束编辑状态 , :wq ...