20175311 2018-2019-2 《Java程序设计》第4周学习总结

教材学习内容总结

这一周在上一周的基础上更进一步,主要学习了子类的继承、super关键字的用法含义、继承与多态、抽象类等知识点。

  1. 对于子类的继承,就像字面上的意思所描述的,子类可以继承所有父类的公有方法和公有变量。存在以下的注意事项:

    • 重写方法不能比被重写方法限制有更严格的访问级别。
    • 在java中只存在单继承,无法实现多继承,但是可以实现逐级继承
    • 在任何一个方法中,super语句都必须放在首句。如果父类中不存在不带参的构造方法,则子类需要进行显示调用。
  2. super关键字的用法和this存在一定的相似性
    • 在Java中,this通常指当前对象,super则指父类的。当你想要引用当前对象的某种东西,比如当前对象的某个方法,或当前对象的某个成员,你便可以利用this来实现这个目的,当然,this的另一个用途是调用当前对象的另一个构造函数。如果你想引用父类的某种东西,则非super莫属。
  3. 在学习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程序设计》第四周学习总结的更多相关文章

  1. Java程序设计第四周学习总结

    1. 本周学习总结 1.1 尝试使用思维导图总结有关继承的知识点. 1.2 使用常规方法总结其他上课内容. 答:①String类是final类,不能定义String的子类. ② instanceof ...

  2. 201871010106-丁宣元 《面向对象程序设计(java)》第四周学习总结

    201871010106-丁宣元 <面向对象程序设计(java)>第四周学习总结 正文开头 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-da ...

  3. 20172328 2018—2019《Java软件结构与数据结构》第二周学习总结

    20172328 2018-2019<Java软件结构与数据结构>第二周学习总结 概述 Generalization 本周学习了第三章集合概述--栈和第四章链式结构--栈.主要讨论了集合以 ...

  4. 杨其菊201771010134《面向对象程序设计(java)》第四周学习总结

    <面向对象程序设计(java)> 第四周学习总结 第一部分:理论知识 1.类与对象 a.类(class)是构造对象的模板或蓝图.由类构造对象的过程称为创建类的实例: java中类声明的格式 ...

  5. 对于“2017面向对象程序设计(JAVA)第四周学习总结”存在问题的反馈

    对于“2017面向对象程序设计(JAVA)第四周学习总结”存在问题的反馈 “这部分同学博文总结没有写,实验作业没有提交.”——1.关于博文作业.实验作业教学功能的正解:学习知识.暴露问题.衔接课上.2 ...

  6. 20155318 2016-2017-2 《Java程序设计》第九学习总结

    20155318 2016-2017-2 <Java程序设计>第九学习总结 教材学习内容总结 学习目标 了解JDBC架构 掌握JDBC架构 掌握反射与ClassLoader 了解自定义泛型 ...

  7. 《Java程序设计》第二学习总结

    <Java程序设计>第二学习总结 教材学习内容总结 类型 byte(字节) shot(短整型) int(整型) long(长整型) float(浮点型) double(双精度) char( ...

  8. 20145304 刘钦令 Java程序设计第二周学习总结

    20145304 <Java程序设计>第2周学习总结 教材学习内容总结 java可区分基本类型和类类型(即参考类型)两大类型系统. 基本类型主要可区分为整数.字节.浮点数.字符与布尔. 整 ...

  9. 20145304 刘钦令 Java程序设计第一周学习总结

    20145304<Java程序设计>第1周学习总结 教材学习内容总结 1995年5月23日,是公认的Java的诞生日,Java正式由Oak改名为Java. Java的三大平台是:Java ...

  10. 20145120黄玄曦 《java程序设计》 寒假学习总结

    1和2.我对未来规划不多,我认为好好学习积累知识能帮助我应对未来的挑战,这是我的学习动力之一,此外,了解新知识满足好奇心也是我的主要的学习动力. 3.我认为专业课学习比公务员考试重要,我认为专业知识是 ...

随机推荐

  1. Archlinux安装指南~小米笔记本Air 13.3英寸版本

    小米笔记本Air 13.3英寸版本,配置为:Intel Core i5-6200U处理器.8GB内存.256GB固态硬盘.NVIDIA GeForce 940MX独立显卡,13.3英寸1920X108 ...

  2. USGS bulk批量下载工具

    最近美国EarthExplorer上批量下载遥感数据---官方给出了批量下载工具BULK 下载地址:https://earthexplorer.usgs.gov/bulk/ bulk 使用帮助文档 根 ...

  3. C#入门基本概念

    一.版本号的命名规则 大部分时候是在名字后面加些数字表示不同的版本.其中以加上年份号最为简单明了.比如 Visual Studio 2008.但是大部分人还是不用这个方式.因为年份号中没有带来跟多的信 ...

  4. 11.2.0.1单实例DGduplicate过程

    记录一次duplicate完整过程1)环境说明数据库版本oracle11.2.0.1,os linux 6.6备库应用的归档,最近一次是三个月前,由于DG环境以前是好的,因此直接迁移数据即可.本次使用 ...

  5. oracle追加表空间

    ----查询表空间使用情况--- SELECT UPPER(F.TABLESPACE_NAME) "表空间名", D.TOT_GROOTTE_MB "表空间大小(M)&q ...

  6. 固态硬盘Ghost安装Windows 10无法引导的问题

    机器配置如下: 电脑型号 技嘉 B360M POWER 台式电脑 操作系统 Windows 10 64位 ( DirectX 12 ) 处理器 英特尔 Core i7-8700 @ 3.20GHz 六 ...

  7. JAVA日常之一

    一.JDK安装及环境变量设置 下载jdk安装包,如jdk-8u65-windows-x64.exe,点击安装,记住安装路径如E:\Program Files\Java\jdk1.8.0_65: 打开环 ...

  8. jmeter使用手册

    1.在bin文件中找到jmeter.bat文件启动 2.创建测试计划-填写计划名称 3.添加线程组(右键点击) 4.设置线程-红框内均可设置,线程数-并发次数 5.在线程组下添加http请求 6.在h ...

  9. pdf.js 使用实例(app直接预览pdf格式的文档)

    pdf.js可以实现在html下直接浏览pdf文档,是一款开源的pdf文档读取解析插件 pdf.js主要包含两个库文件,一个pdf.js和一个pdf.worker.js,,一个负责API解析,一个负责 ...

  10. sublime text 3 ,React,html元素自动补全方法(用Emmet写法写jsx中的html)

    1. 安装emmet: Preferences -> Package Control -> Install Package -> emmet 2. 配置emmet: Preferen ...