20155220 2016-2017-2 《java程序设计》第四周总结
教材学习内容总结
第六章 继承与多态
继承
继承的基本原则是:
子类继承父类的所有成员变量(包括静态成员);
子类继承除父类构造方法外的所有成员方法(包括静态方法);
子类不能继承父类的构造方法,但在其构造方法中会隐含调用父类的默认构造方法。
Java的类继承关系形成一个树型结构,而不是网状结构。
多态
前提:把子类对象当成父类对象来看。
把子类对象当成父类对象来看时:只能调用父类中定义的属性和方法。
把子类对象当成父类对象来看时:如果子类覆盖了父类中的方法,则调用的是子类覆盖后的这个方法;但是如果调用属性时是调用父类的属性而并非子类的,所以尽量不要定义父子类同名的属性。
把父类强制转换成子类时,则调用的是子类中的方法。
封装
- 封装是面向对象方法的重要原则,就是把对象的属性和操作(或服务)结合为一个独立的整体,并尽可能隐藏对象的内部实现细节。
继承语法细节
- Java中继承以关键字extends实现,即BaseClass extendsSubClass{}的形式实现导出类由BaseClass导出子类SubClass,子类可以在其接口中自动获取基类的方法而不论这些方法是否在子类中显示定义过;一方面,在子类中使用基类中的方法及对其进行修改都是可行的。
第七章 接口与多态
接口可以理解为一种特殊的类,里面全部是由全局常量和公共的抽象方法所组成。
接口的数据成员,只允许被
public
,static
,final
修饰。接口的方法成员,只允许被public
,abstract
修饰。类要操作接口,必须使用
impements
关键字。可使用
interface
来定义抽象的行为与外观,接口中的方法没有操作时,一定得是公开且抽象,此时可以省略public abstract
。接口的使用必须通过子类,子类必须覆写全部抽象方法。一个子类虽然只能继承于一个父类,但可以同时实现多个接口。
教材学习中的问题和解决过程
- 问题:如何理解接口的多态性?
解答
- 接口的出现是为了更好的实现多态,而多态的实现不一定需要依赖于接口。多态一般有三种,即接口的多态,类的多态,方法的多态。接口跟类基本是一样,不同的类实现接口可以有不同的方式从而表现不同的行为,就是接口的多态性。
代码托管
上周考试错题总结
- 1、填空:“30”转化为byte类型的30的语句是(Byte.parseByte(“30”);)。
错因:细节错误,将(“30”)表示成了(‘30’)。
- 2、判断:Java中类总会有默认构造方法。(X)
分析:构造和默认构造这两个类本质上是一样的,当没有提供构造方法时,编译器会自动加上一个默认的不带参数的构造方法。对于java而言,如果每个类中,你不些写构造方法,它都默认存在一个无参的构造方法。故本题错。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第二周 | 40/100 | 1/2 | 8/20 | |
第三周 | 100/150 | 1/3 | 18/38 | |
第四周 | 465/800 | 1/4 | 23/30 |
20155220 2016-2017-2 《java程序设计》第四周总结的更多相关文章
- Java程序设计第四周学习总结
1. 本周学习总结 1.1 尝试使用思维导图总结有关继承的知识点. 1.2 使用常规方法总结其他上课内容. 答:①String类是final类,不能定义String的子类. ② instanceof ...
- 201671010127 2016—2017—2 Java怎样解决Java程序中中文乱码的问题。
这是本次第二次分享新手在编程中遇到的问题,相信很多Java新手和我一样,在Java编程中会遇到中文乱码的情况,下面我就给大家分享我遇到问题和解决问题的具体过程. 我先用Notepad++写了一个如下的 ...
- 201671010127 2016—2017—2 Java学习周结
时间真是个最公平东西,只要能够好好地利用它,它可以为我们带来我们我们所想要的东西.学习Java已经有一周了,对于Java基础知识的认识也更进一步,对Java的兴趣也愈来愈浓.实现一个Java程序,主要 ...
- 2016-2017 2 20155335《java程序设计》第四周总结
# 20155335 <Java程序设计>第四周学习总结 ## 教材学习内容总结 继承,在本职上是特殊到一般的关系,即is—a关系,子类继承父类,表明子类是一种特殊的父类,并且具 ...
- 对于“2017面向对象程序设计(JAVA)第四周学习总结”存在问题的反馈
对于“2017面向对象程序设计(JAVA)第四周学习总结”存在问题的反馈 “这部分同学博文总结没有写,实验作业没有提交.”——1.关于博文作业.实验作业教学功能的正解:学习知识.暴露问题.衔接课上.2 ...
- 20155220 2016-2017-2 《Java程序设计》第七周学习总结
20155220 2016-2017-2 <Java程序设计>第七周学习总结 教材学习内容总结 Lambda 如果使用JDK8的话,可以使用Lambda特性去除重复的信息. 在只有Lamb ...
- 2017秋季面向对象程序设计(Java)教材、教学纲要、考核要求
教材简况 凯 S.霍斯特曼 (Cay S. Horstmann)(作者), 周立新(译者), Java核心技术(卷1):基础知识(原书第10版) , 2016年9月1出版 本书包括两卷,选做教材的是卷 ...
- 20155220 2016-2017-2 《Java程序设计》第六周学习总结
20155220 2016-2017-2 <Java程序设计>第六周学习总结 教材学习内容总结 第十章 输入输出 10.1 InputStream OutputStream 数据有来源与目 ...
- 20155220 2016-2017-2 《Java程序设计》第九周学习总结
20155220 2016-2017-2<Java程序设计>第九周学习总结 教材学习内容总结 JDBC(Java DataBase Connectivity)即java数据库连接,是一种用 ...
- 20165318 2017-2018-2 《Java程序设计》第四周学习总结
20165318 2017-2018-2 <Java程序设计>第四周学习总结 IDEA安装 按照娄老师Intellj IDEA 简易教程,我下载了IDEA但是由于没有注册学校邮箱,我没办法 ...
随机推荐
- [日常]蒟蒻的高一生活 Week 1~3
博主在三周前成功晋级为高中生OwO终于不再是假的HZOIer感受一波HZ的真正生活...(然而实际上级部不少监督一直没启动23333) (然而三周过去好多事情都忘了QAQ瞎写好了(逃)) Week 1 ...
- HTML5 拖放、交换位置
设置元素为可拖放 draggable 属性设置为 true: <img draggable="true" /> 拖动什么 - ondragstart 和 setData ...
- 数据库连接池及并发库Theron
- URAL-1019 Line Painting----暴力或线段树
题目链接: https://cn.vjudge.net/problem/URAL-1019 题目大意: 一个0~1e9的区间,初始都是白的,现进行N次操作,每次将一段区间图上一中颜色.最后问说连续最长 ...
- Dockerfile.md
Docker 使用 前提条件 Docker目前只能在64位CPU架构的计算机上运行(目前只能是x86_64 .amd64). Linux 3.8 或 更高版本的内核.3.8之前的版本也能运行,但效果不 ...
- Save and read double array in a binary file
;} 32 bytes read 9.5 -3.4 1 2.1 "
- linux 远程复制文件或文件夹
linux 远程复制文件或文件夹. 复制当前服务器的文件夹或文件到指定服务器的文件夹. #远程复制文件夹: scp -r /home/administrator/test/ root@192.168. ...
- 【[NOI2018]屠龙勇士】
发现好像都是化掉系数之后套上\(ExCrt\)的板子 这好像是一个真正的扩展扩展中国剩余定理 我们要处理的方程是这样的形式 \[c_ix\equiv b_i(mod\ a_i)\] 其中\(c\)用一 ...
- [HNOI2006]马步距离
嘟嘟嘟 这题首先直接bfs可定过不了,因此可以先贪心缩小两个点的距离,直到达到某一个较小的范围(我用的是30),再bfs暴力求解. 首先我们求出这两个点的相对距离x, y,这样就相当于从(x, y) ...
- HTML5本地存储——IndexedDB
在HTML5本地存储——Web SQL Database提到过Web SQL Database实际上已经被废弃,而HTML5的支持的本地存储实际上变成了 Web Storage(Local Stora ...