JAVA 第四周学习总结
20175303 2018-2019-2 《Java程序设计》第四周学习总结
教材学习内容总结
•用extends来定义一个类的子类。
•Object类是所有类的祖先类。
•如果子类和父类都在一个包中,那么子类自然地继承了父类中不是private的成员变量和方法作为自己的成员变量和方法,且成员变量和方法的访问权限不变。
•如果子类和父类不在一个包中,子类只继承父类中的protected和public访问权限的成员变量和方法。
•子类声明时,除了继承的和新声明成员变量分配了内存,父类中的友好变量和private变量虽不会继承,但也会分配内存,可以通过继承的父类的方法来操作父类中的友好变量和private变量。
•instanceof是java独有的双目运算符,左面的操作元是对象,右面的操作元是类,当左面的操作元是右面的类或其子类所创建的对象是,instanceof的运算结果是true,否则是false。
•所声明的成员变量的名字和从父亲继承来的成员变量的名字相同(声明的类型可以不同)时,子类就会隐藏所继承的成员变量。
•子类对象以及子类自己定义的方法操作与父类同名的成员变量是指子类重新申明的这个成员变量。
•子类对象仍然可以调用从父类继承的方法来操作被子类隐藏的成员变量。
•方法重写是指子类中定义一个方法,这个方法的类型和父类的方法的类型一致,或者是父类的方法的类型的子类型,并且这个方法的名字,参数个数,参数的类型和父类的方法完全相同。
•子类在重写可以继承的方法时,可以完全按照自己的意图编写新的方法体。
•子类不能继承父类的构造方法,子类在其构造方法中需要使用super来调用,父类的构造方法,而且super必须是子类构造方法中的头一条语句,如果子类的构造方法没有明显的指明使用父类的哪个构造方法,子类就调用父类的不带参数的构造方法。
•可以使用final将类声明为final类,final类不能被继承,不能有子类,如果用final修饰父类中的一个方法,那么这个方法不允许子类重写。如果成员变量或局部变量被修饰为final,那他就是常量,不能被再次赋值。
•对象的上转型对象的实体是子类负责创建的,同把子类创建的对象的引用放到一个父类的对象中时,就得到了该对象的一个上转型对象。
•上转型对象不能操作子类新增的成员变量或方法,可以操作子类继承的成员变量和方法。
•可以将对象的上转型对象再强制转换到一个子类对象,这时,该子类对象又具备了子类的属性和功能。
•多态性就是指不同的子类在重写父类的方法时可能产生不同的行为。
•用abstract修饰的类称为abstract类(抽象类),用abstract修饰的方法为abstract方法。
•abstract方法,只允许声明,不允许实现,即没有方法体,必须要被子类重写。
•abstract类可以有abstract方法,也可以没有;非abstract类不能有abstract方法。
•abstract不能用new运算符创建对象
•不允许用final和abstract同时修饰一个方法或类,也不允许使用static修饰abstract方法。
•抽象类给出的是重要的行为标准,但不给出具体行为。
教材学习中的问题和解决过程
1.例子6最开始不知道Integer是什么类,不知道t.intValue()的意思和方法。
后来经过问同学和网上查资料,了解到Integer是int的包装类,没有默认值。
intValue()是输出int型数据。

代码托管

考试错题总结
1.正确答案为C,子类继承的方法不能操作在子类新声明的成员变量,只能操作子类继承和隐藏的成员变量。D子类操作被子类隐藏的成员变量需要使用super关键字。

2.正确答案没有E,课本132页就用public和abstract一起修饰了getArea()方法。就选了E
知道做错题以后才发现,不能加花括号。

3.正确答案没有D,被子类隐藏的成员变量只能通过子类继承的方法来操作。

感悟
虽然课本上和视频上的绝大部分内容都能听懂,但如果让自己写程序,可能会以最简单的方式写出来,而不会用各种上转型对象,final修饰符,abstract修饰符等知识点。
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 5000行 | 10篇 | 400小时 | |
| 第一周 | 0/0 | 0/0 | 20/20 | |
| 第二周 | 553/553 | 1/1 | 15/35 | |
| 第三周 | 940/1493 | 1/2 | 20/55 | |
| 第四周 | 551/2044 | 1/3 | 25/80 |
JAVA 第四周学习总结的更多相关文章
- 20165210 Java第四周学习总结
20165210 Java第四周学习总结 教材学习内容 第五章学习总结 子类与父类: 子类: class 子类名 extends 父类名 { ... } 类的树形结构 子类的继承性: 子类和父类在同一 ...
- 20155327 java第四周学习笔记
20155327 java第四周学习笔记 五六章知识整理 1子类与父类 父类是接口或者是抽象类,子类必须继承自父类. 2子类的继承性 在Java中,通过关键字extends继承一个已有的类,被继承的类 ...
- 20145304 Java第四周学习报告
20145304<Java程序设计>第四周学习总结 教材学习内容总结 1.继承共同行为: 继承基本上就是避免多个类间重复定义共同行为,关键词为extends. 代码如下: //继承共同行为 ...
- 20165326 java第四周学习笔记
第四周学习笔记 ch5 子类和父类 子类只能有一个父类 使用关键字extendsyclass 子类 extends 父类 系统默认的祖先类Object(java.lang包中) 继承:子类继承父类的方 ...
- 2016-2017-2 20155309南皓芯java第四周学习总结
教材内容总结 这次我们学习的还是两章的内容,学习任务量跟上次比的话大体上来讲是差不多的. 继承与多态 继承 继承也符合DRY(Don't Repeat Yourself)原则 Role role1 = ...
- java第四周学习总结
学号20145336 <Java程序设计>第4周学习总结 教材学习内容总结 继承 继承符合(Don't Repeat Yourself)原则,即在自己的代码中不要重复自己编写的信息,这在多 ...
- java第四周学习
这一周学习的还是面向对象的方法和应用 Java中方法的使用和注意事项 如果没有返回值,就不允许通过return关键字返回结果 方法中不允许嵌套使用 Return返回值只允许返回一个值,不允许返回多个 ...
- 201521123093 java 第四周学习总结
1.平面作业 1.1 尝试使用思维导图总结有关继承的知识点. 1.2 使用常规方法总结其他上课内容. 答:1.类与方法的注释 2.super关键字代表的是父类,super.方法表示调用的是父类 2. ...
- Java第四周学习日记(绪)
1.静态导入 作用:简化书写静态导入可以作用一个类的所有静态成员静态导入格式:import static 包名.类名静态导入要注意的事项:如果静态导入的成员与本类的成员存在同名的情况下,那么默认使用本 ...
随机推荐
- NOIP2012 普及组 寻宝
题目描述 Description 传说很遥远的藏宝楼顶层藏着诱人的宝藏.小明历尽千辛万苦终于找到传说中的这个藏宝楼,藏宝楼的门口竖着一个木板,上面写有几个大字:寻宝说明书.说明书的内容如下: 藏宝楼共 ...
- PHP,PSR开发规范
https://github.com/hfcorriez/fig-standards/tree/zh_CN/%E6%8E%A5%E5%8F%97 PSR-1-basic-coding-standard ...
- 突破这个四个阶段年薪没有50W,还好意思说是搞Java的?
该视频教程总共分为四个阶段来学习.逐步进阶,并且还会不定期更新.我简介一下每一个阶段的视频资源,学习顺序不分先后. 第一阶段 第一阶段主要从 svn/git 版本号控制.Java高并发.JVM虚拟机. ...
- 11个超震撼的HTML5和纯CSS3动画源码
1.jQuery多功能手风琴个人信息菜单面板 这是一款基于jQuery的手风琴个人信息菜单面板,每一个菜单项展开后可以自定义布局,因此可以为每一个菜单项实现多功能.类似这样的多功能菜单还有jQuery ...
- SQL注入学习资料总结
转载自:https://bbs.ichunqiu.com/thread-12105-1-1.html 什么是SQL注入 SQL注入基本介绍 结构化查询语言(Structured Query Lang ...
- ios app qbw.plist demo
qbw.plist <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC ...
- 在interface vlan下敲no ip proxy-arp什么意思
取消由路由带来的ARP请求. proxy ARP有哪些优点? 最主要的一个优点就是能够在不影响其他router的路由表的情况下在网络上添加一个新的router,这样使得子网的变化对主机是透明的 pro ...
- redhat杂记
1.设置sudo权限:修改/etc/sudoers文件,找到root ALL=(ALL) ALL,在后面添加nginx ALL=(ALL) NOPASSWD: ALL 2.用sed命 ...
- 了解cron以及使用cron定时备份MySQL
cron是一个linux下的定时执行工具,可以在无需人工干预的情况下运行作业.由于Cron 是Linux的内置服务,但它不自动起来,可以用以下的方法启动.关闭这个服务: /sbin/service c ...
- MyBatis ResultMap Assocation 返回属性为null的问题
Model: public class Employee { private Integer id; private String lastName; private String email; pr ...