20175311 2018-2019-2 《Java程序设计》第四周学习总结
20175311 2018-2019-2 《Java程序设计》第4周学习总结
教材学习内容总结
这一周在上一周的基础上更进一步,主要学习了子类的继承、super关键字的用法含义、继承与多态、抽象类等知识点。
- 对于子类的继承,就像字面上的意思所描述的,子类可以继承所有父类的公有方法和公有变量。存在以下的注意事项:
- 重写方法不能比被重写方法限制有更严格的访问级别。
- 在java中只存在单继承,无法实现多继承,但是可以实现逐级继承
- 在任何一个方法中,super语句都必须放在首句。如果父类中不存在不带参的构造方法,则子类需要进行显示调用。
- super关键字的用法和this存在一定的相似性
- 在Java中,this通常指当前对象,super则指父类的。当你想要引用当前对象的某种东西,比如当前对象的某个方法,或当前对象的某个成员,你便可以利用this来实现这个目的,当然,this的另一个用途是调用当前对象的另一个构造函数。如果你想引用父类的某种东西,则非super莫属。
- 在学习abstract时看到的几点需要注意的细节:
- 如果一个函数没有方法体,那么该函数必须要使用abstract修饰,把该函数修饰成抽象的函数。
- 如果一个类出现了抽象的函数,那么该类也必须使用abstract修饰。
- 如果一个非抽象类继承了抽象类,那么必须要把抽象类的所有抽象方法全部实现。
- 抽象类可以存在非抽象方法,也可以存在抽象的方法, 抽象类可以不存在抽象方法。
- 抽象类是不能创建对象的。
- 抽象类是存在构造函数的,其构造函数是提供给子类创建对象的时候初始化父类的属性的。
教材学习中的问题和解决过程
- 问题1:为什么抽象类不能创建对象呢?
- 问题1解决方案: 因为抽象类是存在抽象方法的,如果能让抽象类创建对象的话,那么使用抽象的对象,调用抽象方法是没有任何意义的。
- 问题2:对于方法定义public和定义为空有什么区别?
- 问题2解决方案:存在三种访问权限:public:可以被任意实体访问protected。只允许子类及本类的成员函数访问private。只允许本类的成员函数访问
代码调试中的问题和解决过程
- 问题1:之前在看书时发现了一个问题并在蓝墨云班课上提问,“为什么子类定义的对象可以调用父类的私密变量”最后得到了同学的解答。
- 问题1解决方案:通过自己对知识的进一步了解,得到了同学的解答。

[代码托管]
https://gitee.com/H2742/HelloWorld
图片截图
上周考试错题总结
- 错题1
上周课堂测试时考察了我们对如何输入变量的理解,我只是在书上看到过类似的句子,但也并没有见过太多次,更没有可以地去记忆,因此在课堂上测试时没有做出来对应的题目。于是我在课后翻了翻有关输入变量的博客,才对这个知识点有所了解。
其中,java没有提供诸如C/C++中的scanf输入函数,因此从键盘输入并不是一个简单的事情,为了方便起见,我们编写了一个名为SimpleInput的类,包含三个方法ReadDouble(),ReadInt(),和ReadString();他们分别从键盘输入浮点数,整数和字符串。

其他(感悟、思考等,可选)
这周上课的考试让我学到了许多东西,我开始就只会自己输入输出变量,但这是远远不够的。这周的测试告诉了我们要能够编写出存在让用户输入和结果输出的一个程序,因此我仔细地学习相关的内容。这周我在看书的同时,对于一些比较艰涩难懂的知识点我也增加了一些看视频的过程。我通过查询相关的博客以及看老师提供的视频以及自己找到的一些视频来了解这些知识。但是最重要的还是自己动手去编写这些程序,我认为自己在这一点方面做的还是有所欠缺,可能由于时间比较有限,自己始终没有能够很好的完成这一点。所以我希望自己在之后的学习中能够在学习视频的基础上,能够增加自己编写程序的练习。
20175311 2018-2019-2 《Java程序设计》第四周学习总结的更多相关文章
- Java程序设计第四周学习总结
1. 本周学习总结 1.1 尝试使用思维导图总结有关继承的知识点. 1.2 使用常规方法总结其他上课内容. 答:①String类是final类,不能定义String的子类. ② instanceof ...
- 201871010106-丁宣元 《面向对象程序设计(java)》第四周学习总结
201871010106-丁宣元 <面向对象程序设计(java)>第四周学习总结 正文开头 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-da ...
- 20172328 2018—2019《Java软件结构与数据结构》第二周学习总结
20172328 2018-2019<Java软件结构与数据结构>第二周学习总结 概述 Generalization 本周学习了第三章集合概述--栈和第四章链式结构--栈.主要讨论了集合以 ...
- 杨其菊201771010134《面向对象程序设计(java)》第四周学习总结
<面向对象程序设计(java)> 第四周学习总结 第一部分:理论知识 1.类与对象 a.类(class)是构造对象的模板或蓝图.由类构造对象的过程称为创建类的实例: java中类声明的格式 ...
- 对于“2017面向对象程序设计(JAVA)第四周学习总结”存在问题的反馈
对于“2017面向对象程序设计(JAVA)第四周学习总结”存在问题的反馈 “这部分同学博文总结没有写,实验作业没有提交.”——1.关于博文作业.实验作业教学功能的正解:学习知识.暴露问题.衔接课上.2 ...
- 20155318 2016-2017-2 《Java程序设计》第九学习总结
20155318 2016-2017-2 <Java程序设计>第九学习总结 教材学习内容总结 学习目标 了解JDBC架构 掌握JDBC架构 掌握反射与ClassLoader 了解自定义泛型 ...
- 《Java程序设计》第二学习总结
<Java程序设计>第二学习总结 教材学习内容总结 类型 byte(字节) shot(短整型) int(整型) long(长整型) float(浮点型) double(双精度) char( ...
- 20145304 刘钦令 Java程序设计第二周学习总结
20145304 <Java程序设计>第2周学习总结 教材学习内容总结 java可区分基本类型和类类型(即参考类型)两大类型系统. 基本类型主要可区分为整数.字节.浮点数.字符与布尔. 整 ...
- 20145304 刘钦令 Java程序设计第一周学习总结
20145304<Java程序设计>第1周学习总结 教材学习内容总结 1995年5月23日,是公认的Java的诞生日,Java正式由Oak改名为Java. Java的三大平台是:Java ...
- 20145120黄玄曦 《java程序设计》 寒假学习总结
1和2.我对未来规划不多,我认为好好学习积累知识能帮助我应对未来的挑战,这是我的学习动力之一,此外,了解新知识满足好奇心也是我的主要的学习动力. 3.我认为专业课学习比公务员考试重要,我认为专业知识是 ...
随机推荐
- Vue-devtools安装步骤
今天跟着网上参考的vue调试工具安装的方法,总结出更完善的步骤: 步骤一:调往链接地址 https://github.com/vuejs/vue-devtools 步骤二:解压链接地址中的包,到本地桌 ...
- PHP 解决ueditor兼容问题
默认情况下,ueditor的内容通过PHP导入到DB中,会将内容中的html进行转义操作,此时读取显示就会有问题 step 1: $content = htmlspecialchars_decode( ...
- CSS3扁平化Loading动画特效
效果预览:http://hovertree.com/texiao/css3/42/ 代码如下: <!doctype html> <html> <head> < ...
- kettle并行运行时出现「Unknown error in KarafBlueprintWatcher」
背景:在使用kettle 6进行大量数据并行抽取时,偶尔会出现「Unknown error in KarafBlueprintWatcher」的错误,详细的报错信息可以查看下面的代码块. ERROR: ...
- 使用command line测试网速
wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py --no ...
- python矩阵的切片(或截取)
矩阵一般有行也有列,所以矩阵的截取也需要包含行和列两个参数. 假设a是一个矩阵,a的截取就可写成:a[起始行:终止行,起始列:终止列],中括号中有一个逗号,逗号前的是为了分割行的,逗号后的是为了分割列 ...
- python 编写登陆接口
#!/usr/bin/env python#_*_ coding:utf-8 _*_dic={ 'yts':{'password':'123','count':0}, 'nick':{'passwor ...
- CentOS7下MySQL5.7安装配置方法图文教程(YUM)
安装环境:CentOS7 64位,MySQL5.7 1.配置YUM源 在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo/yum/ # ...
- explain和profiling分析查询SQL时间
mysql可以通过profiling命令查看到执行查询SQL消耗的时间. 默认情况下,mysql是关闭profiling的,命令: select @@profiling; +------------- ...
- Netty 工具类 —— HashedWheelTimer 讲解
一.前言 首先有一篇超时任务的实战分析,文章简短精炼明了,阐述了,为什么要用HashedWheelTimer. https://chuansongme.com/n/1650380646616 看完后, ...