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

教材学习内容总结

继承与多态

继承

  • 继承避免多个类间重复定义共同行为,使用关键字extends。继承表明了子类与父类之间的is-a关系,中文称为“是一种”。子类继承父类之后,定义与父类中相同的方法部署,但执行内容可以相同也可以不同,不同时需要“重新定义”,并且可以改写父类里抽象类型 在@Override下重写

多态

  • 继承的多态是指同一父类有很多子类,被很多子类重复使用。
  • 被声明为protect的成员,相同包中的类可以直接存取,不同包中的类可以在继承后的子类直接存取。

一些继承里出现的关键字语法小结

关键字 解释
super() 可以直接调用父类函数,越级调用;
this() 通常指当前对象,调用当前类中函数
extends 后接继承类名称,用于继承
abstract 标示该方法为抽象方法

接口与多态

接口

  • 在Java中可以使用interface关键字定义行为。可供其他类调用该接口,调用时需要关键字implement打头;
  • 操作接口则表示“拥有行为”,某个类可以同时拥有很多接口
  • 在子类的操作中可以用@Override重写

【注释】可以访问java中super的两种用法了解下super()用法;

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

  • 问题一:println,printf,print的具体用法,以及格式控制
用法
print 将它的参数显示在命令窗口,并将输出光标定位在所显示的最后一个字符之后
println 将它的参数显示在命令窗口,并在结尾加上换行符,将输出光标定位在下一行的开始
printf 格式化输出的形式
  • 其中printf()继承了C语言里的printf()函数,里面相关格式控制具体参考Java中print、printf、println的区别;
  • 问题二:private,public,无关键字,protected的权限比较
  • public、protected、默认、private修饰方法时作用域依次降低public方法作用域为本类,包内,子类,包外都可protected方法作用域为本类,包内,子类默认关键字修饰的方法的作用域为本类,包内private方法作用域只是本类
  • 可以参考public、protected、默认、private关键字;

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

  • 问题:编译不通过:不兼容,ROle无法转换成SwordMan型;

  • 这是典型的is-a问题,当时在定义SwordMan类时,继承了Role类,因此,Role和SwordMan类的关系是,Role是SwordMan的父类,SwordMan 是一种(is-a)Role,在代码里只需修改后部代码,改为Role swordman =new SwordMan();就行了

代码托管

  • 代码提交过程截图

  • 代码量截图:

上周考试错题总结

卷四,第一题

  • (grep)命令可以进行全文搜索。
  • 解释:grep是linux中很常用的一个命令,主要功能就是进行字符串数据的对比,能使用正则表达式搜索文本,并将符合用户需求的字符串打印出来。grep全称是GlobalRegularExpressionPrint,表示全局正则表达式版本,它的使用权限是所有用户。grep在数据中查找出一个字符串时,是以整行为单位来进行数据选取的。
  • System.out.println(“”+52+25);的结果是(5225)
  • 解释:System out println(""+i);等价于System.out.println(i.toString());public String toString()返回该对象的字符串表示。通常,ToString()方法会返回一个“以文本方式表示”此对象的字符串。因此在本题中以字符串形式输出5225。

其他

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第二周 98/100 1/2 30/38 学习java的基础语法
第三周 302/300 1/3 27/30 学习java对象及封装
第四周 1032/1000 1/4 36/40 学习了继承与多态的关系,以及接口的多态操作

参考资料

20155213 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. Github文件夹下载到本地

    1.如图:需要将以下文件夹下载到本地. https://github.com/aspnet/Docs/tree/master/aspnet/mvc/overview/getting-started/i ...

  2. scala集合与数据结构

    1.数据结构特点 Scala同时支持可变集合和不可变集合,不可变集合从不可变,可以安全的并发访问. 两个主要的包: 不可变集合:scala.collection.immutable 可变集合: sca ...

  3. 1、Python代码初识

    由于python2.7版本默认使用的是ASCII码,必须在编写前加入两行代码,表示使用UTF-8码. #!/usr/bin/python # -*- coding:utf-8 -*- print('你 ...

  4. nd.array.where

    http://mxnet.apache.org/api/python/ndarray/ndarray.html#mxnet.ndarray.where Return the elements, eit ...

  5. 把dataTable数据转换为Html

    using System;using System.Collections.Generic;using System.Data;using System.Linq;using System.Text; ...

  6. size和len

    size函数只能用于计算array,不能用于计算list,返回的是数组的元素个数 len函数既可以计算array,也可以计算list >>> a = np.array([1,2]) ...

  7. linux命令使用总结

    ## linux 查看系统全部信息 uname -a ## linux 查看系统内核信息 uname -r ## linux 查看系统版本号信息 cat /etc/redhat-release ## ...

  8. 算法——(5)B/B+/红黑树

    1. B树——lgdN B树是平衡多路查找树,主要用于文件系统的索引. 1)定义: 对于一个度数为d的B树, 每个结点最多有d个孩子 如果根结点不是叶子结点,那它至少有两个孩子 每个非叶子结点(非根结 ...

  9. EasyUI Calendar 日历插件,只显示年月。

    从别人的博客园搬过来的,放在这里只是为了方便自己用.已经注明原文出处,尊重别人的劳动成果. 原文地址:http://www.cnblogs.com/hmYao/p/5779463.html 此日历插件 ...

  10. php版本低更换php版本-问题以解决

    Parse error: syntax error, unexpected 'class' (T_CLASS), expecting identifier (T_STRING) or variable ...