20155236 2016-2017-2 《Java程序设计》第四周学习总结

教材学习内容总结

1.继承基本上就是避免多个类间重复定义共同行为。
继承的三个好处:减少代码冗余;维护变得简单;扩展变得容易。
构造方法不能被继承。
2.s-a指的是类的父子继承关系,中文称为“是一种”关系。
多态:用抽象讲法解释,就是使用单一接口操作多种类型的对象。
3.被声明为protected的成员,相同包中的类可以直接存取,不同包中的类可以在继承后的子类直接存取。与我们熟知的关键字public之间来说,它的权限较小。
4.如果类有继承关系,在创建子类实例后,会先进行父类定义的初始流程,再进行子类中的初始流程,也就是创建子类实例后,会先执行父类构造函数定义的流程,再执行子类构造函数定义的流程。
5.Java中所有对象一定是一种Object.在Java中,自来只能继承一个父类,如果在定义类的时候没有指定要继承哪一类,那么这个类就一定是继承。
6.类要操作接口,必须使用implements关键字。操作某接口时,对接口中定义的方法有两种处理方式,一是操作接口中定义的方法,二是再度将该方法标示为abstract。
7.临时继承某个类或操作某个接口并建立实例,可使用匿名内部类:new 父类()|接口(){// 类本体操作 };。

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

  • 在编译第二个程序时,因为类的关系导致无法编译,于是下载了idea,这上面很方便,把每个代码放入同一project里问题就可以解决。

  • 检查多态语法逻辑是否正确,方式是从右向左读,即右边类型是不是左边类型的子类?不是的话会编译失败,如果加扮演cast语法,虽然可以通过编译,但是执行时是扮演失败,会抛出classCastException.

  • 在drawfight()方法中声明的role类型的参数,方法中调用的,到底是Role中定义的fight()还是个别子类中定义的fight()?
    Swordsman上挂有Role的牌子,我们只是要求有Role牌子的对象攻击,那么发动攻击的对象就是Swordsman实例。我们所写的drawfight(Swordsman)意味着,我们此次操作的是挂有role牌子的Swordsman实例。

  • 想问一下老师,什么叫做操作抽象方法?

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

  • 在“重新定义行为”这一节中,我们应先将role类中添加fight()方法,再给Swordsman与Magician两个子类中加入对于fight的描述。因为有了idea,所以我们可以统一修改role。

  • 想问一下老师,这个程序我按照书上的打下来后,并不能停止访客名称的录入,无法输出访客名单= =不知道为什么。

代码托管

  • 代码提交过程截图:
  • 代码量截图:

上周考试错题总结

  • 填空:Linux Bash中,(grep)命令可以进行全文搜索。
    grep命令能使用正则表达式搜索文本,并把匹配的行打印出来。
  • 判断:Java中类总会有默认构造方法。(X)
    对于java而言,如果每个类中,你不先写构造方法,它都默认存在一个无参的构造方法。故本题错。

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

子类和父类中定义某个方法时,必须保持一致,不然就会出现行为丢失。但我们现在可以在定义方法前加上@Override去要求编译程序检查。感觉这周的内容,自学的话并不能很懂。。。老师能不能在课堂上讲一下重点,我有点懵逼了。。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 20/20 1/1 10/10
第二周 58/78 1/2 6/16
第三周 200/278 1/3 10/26
第四周 660/938 1/4 10/36

20155236 2016-2017-2 《Java程序设计》第四周学习总结的更多相关文章

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  10. 201621123007 Java程序设计第一周 学习总结

    第一周-Java基本概念 201621123007 <Java程序设计> 第一周学习总结 1. 本周学习总结 java是面向对象的一类语言,三大特征:封装性,继承性,多态性. jdk jr ...

随机推荐

  1. Scrum 冲刺博客链接集合

    DAY1 http://www.cnblogs.com/qiaokeliweibaba/p/8901187.html DAY2 http://www.cnblogs.com/qiaokeliweiba ...

  2. sqlserver 修改表字段长度

    ALTER TABLE Table1 ALTER COLUMN column1 VARCHAR(255)

  3. dotnet core sdk 2.1 在centos下的安装

    1. 安装微软的仓库 rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm 2. 修改仓库 ...

  4. [转帖]脑残式网络编程入门(二):我们在读写Socket时,究竟在读写什么?

    脑残式网络编程入门(二):我们在读写Socket时,究竟在读写什么?     http://www.52im.net/thread-1732-1-1.html   1.引言 本文接上篇<脑残式网 ...

  5. Java IO流学习总结 - BIO

      Java流操作有关的类或接口: Java流类图结构: 流的概念和作用 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据 ...

  6. [BZOJ3065]带插入区间K小值 解题报告 替罪羊树+值域线段树

    刚了一天的题终于切掉了,数据结构题的代码真**难调,这是我做过的第一道树套树题,做完后感觉对树套树都有阴影了......下面写一下做题记录. Portal Gun:[BZOJ3065]带插入区间k小值 ...

  7. C++模板编程中只特化模板类的一个成员函数

    模板编程中如果要特化或偏特化(局部特化)一个类模板,需要特化该类模板的所有成员函数.类模板中大多数成员函数的功能可能是一模一样的,特化时我们可能只需要重新实现1.2个成员函数即可.在这种情况下,如果全 ...

  8. 【转】关于在linux下清屏的几种技巧

    在windows的DOS操作界面里面,清屏的命令是cls,那么在linux 里面的清屏命令是什么呢?下面笔者分享几种在linux下用过的清屏方法. 1.clear命令.这个命令将会刷新屏幕,本质上只是 ...

  9. BZOJ2079 [Poi2010]Guilds 【贪心】

    题目链接 BZOJ2079 题解 题意就是黑白染色,要求相邻点存在不同颜色的点 显然从一个点出发,相邻点如果没有染色,染不同颜色,那么一个联通块一定会满足要求 证明:在\(dfs\)树上,每个点父亲和 ...

  10. 20135319zl字符集报告

    字符集实验 ASCII 首先,查找ZHULI五个字符对应的ASCII码,5a 48 55 4c 49. 然后,用vim打开一个空文档,按下":",输入%!xxd 然后,输入 000 ...