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. 利用js 生成不同li标签的点击事件

    <ul> <li>click me</li> <li>你好啊2</li> <li>你好啊3</li> <li& ...

  2. android获取Context

    如果在Activity方法中,直接使用this. 如果在Activity内部类中,使用Activity.this

  3. hyperscan应用参数

    >>hs_compile_ext_multi 使用额外的参数编译表达式, 额外的参数包括: MIN_OFFSET 距离开始的最小偏移开始匹配 MAX_OFFSET 距离开始的最大偏移结束匹 ...

  4. 20155219付颖卓《网络攻防》Exp4 恶意代码分析

    一.基础问题回答 如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪些,用什么方法来监控. 可以用window7自带的schtasks ...

  5. loadrunner---Android、iOS压力测试

    链接来源:http://www.cnblogs.com/ydnice/p/5790848.html 一.LoadRunner简介 LoadRunner,是惠普公司研发的一款预测系统行为和性能的负载测试 ...

  6. 双十一LoanMarket压力测试报告

    测试背景 评估服务器资源及几个重要接口的并发性能. 测试需求 由开发提供的5个重要接口: 业务场景 URL 访问量(万) TPS 请求比例(%) 随手借点-首页产品接口 /suishoujiedian ...

  7. maven各个属性参数详解

    <project xmlns="http://maven.apache.org/POM/4.0.0 " xmlns:xsi="http://www.w3.org/2 ...

  8. xlistview长按

    //XListView的长摁事件 xlistview.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { @O ...

  9. .NET第一章

    1.介绍了.NET的作用和软件前景趋势 2.Visual studio .net 编程 3.介绍.net可以多种编程语言,通过公共语言类库存放 2.介绍C# 数据类型和变量设置,以及函数的使用 3.继 ...

  10. 在Django中使用ForeignKey()报错问题的解决

    在Django2的models中建立一对多的关系使用ForeignKey(): student = models.ForeignKey("Classes") 报错: TypeErr ...