20155302 2016-2017-2 《Java程序设计》第4周总结
20155302 2016-2017-2 《Java程序设计》第4周学习总结
教材学习内容总结
- 有关类的继承的理解:类实现继承的格式:class 子类名 extends 父类名
- 类的继承有三方面的内容,一是父类变量与方法的继承,二是父类变量与方法的覆写或称之为重载,三是super与this的使用区别。
- 子类在继承父类中的方法与属性时,首先会执行父类中的构造方法,再执行子类中的构造方法。一般子类中隐含了super()语句(super主要的功能是完成子类调用父类中的内容)
- 使用extends来扩充行为,先继承再扩充。
- 覆写与重载:子类中的变量或方法,可以与父类中的一样,这时子类的变量与方法就“覆写”了父类的变量与方法,或称之为变量与方法的“重载”。
- super与this最大的区别是,super调用的是父类中的变量或方法,当子类继承了父类中的变量或方法时,this和super的作用一样。当子类的变量或方法覆写了父类中的变量或方法时,由于覆写时子类和父类的变量名称或方法名称是一样的,这时super就会去调用父类中的变量或方法,而this只能调用子类中的变量或方法。当然明确为private类型的变量与方法还是不能调用的。
- 多态的涵义:使用单一接口操作多种类型的对象。JAVA引用变量有两个类型:一个是编译时的类型,一个是运行时的类型,编译时的类型由声明该变量时使用的类型决定,运行时的类型由实际赋给该变量的对象决定。如果编译时类型和运行时类型不一致,就会出现所谓的多态。
- 在继承父类之后,定义与父类中相同的方法部署,但执行内容不同,这称为重新定义。在重新定义父类中某个方法时,子类必须撰写与父类方法中相同的签署。
- 使用abstract标示该方法为抽象方法,该方法不用撰写{}区块,直接“;”结束即可。
- 子类如果继承抽象类,对于抽象方法有两种做法,一种是继续标示该方法为abstract(该子类因此也是一个抽象类,必须在class前标示abstract);另一种做法就是操作抽象方法。如果两种做法都没有实施,就会引发编译错误。
- 权限关键字:依权限小至大来区分,就是private、无关键字、protected与public,设计时要使用哪个权限,是依照经验或团队讨论而定,如果一开始不知道使用哪个权限,就先使用private,以后视需求再放开权限。
- 如果想取得父类中的方法定义,可以在方法调用前,加上super关键字,但可以使用super关键字调用的父类方法,不能定义为private(因为这就限定只能在类内使用)。重新定义方法时注意,对于父类中的方法权限,只能扩大不能缩小。
- 接口说明了“做什么”,而实现这个接口的类,也就是实现类需要说明“怎么做”。接口可以用于定义行为但不定义操作。类要操作接口,必须使用implements关键字,操作某接口时,对接口中定义的方法有两种处理方式,一是操作接口中定义的方法,二是再度将该方法标示为abstract。
- enum中列举的常数,枚举类型实例:public static final。
教材学习中的问题和解决过程
自己在练习中尝试打了一个代码,结果出现了一些疑惑。




两次代码区别只有子类中是否打了“String name”这行代码,为什么有这行代码运行结果就是大写的“LOVE”没有就是小写的"love"???
由此我去百度查找了相关解释。
解答:Cat子类在不写String name的时候是继承了父类Animals的成员变量name; 这时在main函数中实例化Cat,调用构造函数Cat(String name),其中的this.name就是Animals父类中的name。所以a.name随着赋值而变化 而当子类中写了String name;的时候是父类中的成员变量在子类中重写,main函数调用构造函数,其中的this.name代表的是Cat类中重写的成员变量name,而不是父类中的name。所以a.name保持不变,仍然是大写的LOVE
代码托管


上周考试错题总结
- CH04 填空:“30”转化为byte类型的30的语句是(Byte.parseByte(“30”);)。
- 填空:System.out.println(52+25+””);的结果是(77)
- 填空:Linux Bash中,(grep )命令可以进行全文搜索。
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第一周 | 20/20 | 2/2 | 20/20 | |
| 第二周 | 140/160 | 2/4 | 18/38 | |
| 第三周 | 113/273 | 1/5 | 20/58 | |
| 第四周 | 335/608 | 1/6 | 20/78 |
20155302 2016-2017-2 《Java程序设计》第4周总结的更多相关文章
- 20155302 2016-2017-2 《Java程序设计》第九周学习总结
20155302 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 基本数据库操作相关的JDBC接口或类是位于java.sql包中.在程序中要取得数据库联机,我 ...
- 20155227 2016-2017-2 《Java程序设计》第九周学习总结
20155227 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC简介 JDBC全名Java DataBase Connectivity,是java联 ...
- 20155328 2016-2017-2 《Java程序设计》第九周学习总结
20155328 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 16.1 JDBC入门 JDBC是Java联机数据库的标准规范,定义一组标准类与接口,应用程 ...
- 20155216 2016-2017-2 《Java程序设计》第九周学习总结
20155216 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC架构 JDBC API的使用 JDBC连接数据库 1.导入JDBC包: 添加impo ...
- 20155320 2016-2017-2《Java程序设计》第九周学习总结
20155320 2016-2017-2<Java程序设计>第九周学习总结 教材学习内容总结 第十六章 JDBC简介 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 ...
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...
- 20145213《Java程序设计》第一周学习总结
20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145330孙文馨 《Java程序设计》第一周学习总结
20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...
随机推荐
- Salesforce和SAP Netweaver里数据库表的元数据设计
从Salesforce官网可以了解到Salesforce的force.com平台里数据库表的设计:https://developer.salesforce.com/page/Multi_Tenant_ ...
- 【[国家集训队] Crash 的文明世界】
先写一个五十分的思路吧 首先这道题有一个弱化版 [POI2008]STA-Station 相当于\(k=1\),于是就是一个非常简单的树形\(dp\)的\(up\ \ and\ \ down\)思想 ...
- Loj_6282. 数列分块入门 6
Loj_6282 这个题目涉及到了块的重构,这里使用了\(\sqrt{n}\)次插入便重构的方法 讲重复的操作提出来做了函数 #include <iostream> #include &l ...
- POJ 2299 Ultra-QuickSort 求逆序数 (归并或者数状数组)此题为树状数组入门题!!!
Ultra-QuickSort Time Limit: 7000MS Memory Limit: 65536K Total Submissions: 70674 Accepted: 26538 ...
- JUnit提供测试框架的优势(JUnit Provides Advantages as a Test Framework)
测试Java类的内部功能就是刚才你做的那些工作了.真正的测试和刚才的简单例子的主要区别是代码库的大小和复杂度.在处理一大堆代码时,你会需要收集情况报告.但上面的例子遇到第一个错误就停止了,它没有收集尽 ...
- 大话Linux内核中锁机制之内存屏障、读写自旋锁及顺序锁
大话Linux内核中锁机制之内存屏障.读写自旋锁及顺序锁 在上一篇博文中笔者讨论了关于原子操作和自旋锁的相关内容,本篇博文将继续锁机制的讨论,包括内存屏障.读写自旋锁以及顺序锁的相关内容.下面首先讨论 ...
- thinkpad T61 Fn功能键的完整说明及有关问题解决
FN键的作用Fn 键是一个组合键,它自己本身没有用,需要和其他功能键组合起来以迅速改变操作特征,它可以组合的键在键盘上都用蓝色标注,具体作用为: Fn+F2:锁定计算机显示器.要再次打开计算机显示器, ...
- 【css】table标签内的td、th如何设置固定宽度,而不是自适应?
table{ min-width: %; } td{ min-width: 100px; } .table-container{ overflow:auto; display: block; } &l ...
- Docker 学习记录(基础命令)
1. 获取镜像 docker pull [选项] [Docker Registry 地址[:端口号]/]仓库名[:标签] ===> docker pull ubuntu:16:04 2.运 ...
- Windows Redis 取消保护模式C#进行访问
运行redis服务程序和客户端程序设置即可. config set protected-mode “no”