教材学习内容总结

第六章 继承与多态

继承

继承的基本原则是:

  • 子类继承父类的所有成员变量(包括静态成员);

  • 子类继承除父类构造方法外的所有成员方法(包括静态方法);

  • 子类不能继承父类的构造方法,但在其构造方法中会隐含调用父类的默认构造方法。

  • 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程序设计》第四周总结的更多相关文章

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

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

  2. 201671010127 2016—2017—2 Java怎样解决Java程序中中文乱码的问题。

    这是本次第二次分享新手在编程中遇到的问题,相信很多Java新手和我一样,在Java编程中会遇到中文乱码的情况,下面我就给大家分享我遇到问题和解决问题的具体过程. 我先用Notepad++写了一个如下的 ...

  3. 201671010127 2016—2017—2 Java学习周结

    时间真是个最公平东西,只要能够好好地利用它,它可以为我们带来我们我们所想要的东西.学习Java已经有一周了,对于Java基础知识的认识也更进一步,对Java的兴趣也愈来愈浓.实现一个Java程序,主要 ...

  4. 2016-2017 2 20155335《java程序设计》第四周总结

    #  20155335    <Java程序设计>第四周学习总结 ##  教材学习内容总结 继承,在本职上是特殊到一般的关系,即is—a关系,子类继承父类,表明子类是一种特殊的父类,并且具 ...

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

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

  6. 20155220 2016-2017-2 《Java程序设计》第七周学习总结

    20155220 2016-2017-2 <Java程序设计>第七周学习总结 教材学习内容总结 Lambda 如果使用JDK8的话,可以使用Lambda特性去除重复的信息. 在只有Lamb ...

  7. 2017秋季面向对象程序设计(Java)教材、教学纲要、考核要求

    教材简况 凯 S.霍斯特曼 (Cay S. Horstmann)(作者), 周立新(译者), Java核心技术(卷1):基础知识(原书第10版) , 2016年9月1出版 本书包括两卷,选做教材的是卷 ...

  8. 20155220 2016-2017-2 《Java程序设计》第六周学习总结

    20155220 2016-2017-2 <Java程序设计>第六周学习总结 教材学习内容总结 第十章 输入输出 10.1 InputStream OutputStream 数据有来源与目 ...

  9. 20155220 2016-2017-2 《Java程序设计》第九周学习总结

    20155220 2016-2017-2<Java程序设计>第九周学习总结 教材学习内容总结 JDBC(Java DataBase Connectivity)即java数据库连接,是一种用 ...

  10. 20165318 2017-2018-2 《Java程序设计》第四周学习总结

    20165318 2017-2018-2 <Java程序设计>第四周学习总结 IDEA安装 按照娄老师Intellj IDEA 简易教程,我下载了IDEA但是由于没有注册学校邮箱,我没办法 ...

随机推荐

  1. 【转】多线程Core Data

    原文地址:http://www.cocoanetics.com/2012/07/multi-context-coredata/ Multi-Context CoreData When you star ...

  2. Mysql group by top N的问题

    在日常工作中,经常要查询分组的前几名.oracle中可以通过row_num来支持查询,mysql暂时不支持row_num.那么如何来完成这个需求呢? 例如: 表中的数据: +--------+---- ...

  3. 【redis运维】redis自己主动安装脚本(仅仅安装redis)

    Redis自己主动安装部署 本文总共分为4个部分:         redis自己主动安装脚本文件夹结构说明:         redis自己主动安装脚本内容:         redis的操作系统服 ...

  4. vue2.* 绑定属性 绑定Class 绑定style 03

    <template> <div id="app"> <!-- 绑定属性 --> <div v-bind:title="title ...

  5. Loj_6282. 数列分块入门 6

    Loj_6282 这个题目涉及到了块的重构,这里使用了\(\sqrt{n}\)次插入便重构的方法 讲重复的操作提出来做了函数 #include <iostream> #include &l ...

  6. Python装饰器高级用法

    在Python中,装饰器一般用来修饰函数,实现公共功能,达到代码复用的目的.在函数定义前加上@xxxx,然后函数就注入了某些行为,很神奇!然而,这只是语法糖而已. 场景 假设,有一些工作函数,用来对数 ...

  7. java的多线程和并发库

    一.多线程基础知识 1.传统使用类Thread和接口Runnable实现 1)在Thread子类覆盖的run方法中编写运行代码 2)在传递给Thread对象的Runnable对象的run方法中编写代码 ...

  8. mac终端输入python默认打开python3

    *** 1. 终端打开.bash_profile文件 ***open ~/.bash_profile *** 2. .bash_profile文件内容 ***# Setting PATH for Py ...

  9. Web—11-手机端页面适配

    流式布局: 就是百分比布局,非固定像素,内容向两侧填充,理解成流动的布局,成为流式布局 视觉窗口: viewport是移动端持有.这是一个虚拟的区域,承载网页的. 承载关系:浏览器—->view ...

  10. DBA手记(学习) - LOGMNR 简单而强大的工具

    LOGMNR首先执行一个ddl(或dml)操作,以记录重做信息: SYS@ ora11g>conn scott/tigerConnected.SCOTT@ ora11g>alter sys ...