20155334 2016-2017-2 《Java程序设计》第四周学习总结
20155334 2016-2017-2 《Java程序设计》第四周学习总结
教材学习内容总结
第六章:继承与多态
- 继承:面对对象中,子类继承父类,避免重复的行为定义
extends
表示会扩充父类的行为,即为继承父类的行为- 继承的优点在于若要修改某些参数,只需在父类中修改即可
- 在Java中,子类只能继承一个父类
is-a
关系:中文称“是一种”关系,通过该关系可以判定两种类是否为继承,进而判断部分程序片段是否通过编译- 多态:使用单一接口操作多种类型的对象,提高程序的可维护性
- 重新定义:在继承父类之后,定义与父类中相同的方法部署,但执行内容不同
- 抽象方法:某方法区块中真的没有任何程序代码操作,可以使用
abstract
标示该方法为抽象方法,使用此方法可以不用撰写{}区块,直接;
结束即可;此外,一定要在class
之前标示abstract
- 使用
abstract
标示的class
是定义的不完整的抽象类
第七章:接口与多态
- 接口:对于“定义行为”,可以使用interface关键字定义,接口中的方法不能操作,直接表示为abstract,而且一定是public。类要操作接口,必须使用implements关键字。操作某接口时,对接口中定义的方法有两种处理方式,一是操作接口中定义的方法,二是再度将该方法标示为abstract 操作接口会有“拥有行为”关系,而继承是“是一种”的关系,对于接口多态语法的判断,方式是“右边是不是拥有左边的行为”,或者“右边对象是不是操作了左边接口”。
- 类可以操作两个以上的类,可以同时继承某个类,并操作某些接口,接口的出现将“多继承”通过另一种形式体现出来,即“多实现”。
- 定义行为:在java中可以使用
interface
关键字定义,若想拥有某类定义的行为,就必须操作接口。
就JAVA的语意来说,继承会有一种“是一种”关系,操作接口则表示“拥有行为”,不一定是“是一种”的关系
教材学习中的问题和解决过程
代码调试中的问题和解决过程
代码照搬课本,没有遇到大问题。
代码托管
托管截图
代码量截图
上周考试错题总结
- 调用p145 sum函数计算1+2+3+4+5的代码是(MathTool.sum(1,2,3,4,5))
- 填空:Java中方法参数只用(传值)调用
- 填空:“30”转化为byte类型的30的语句是(Byte.parseByte(“30”)
- 判断:Java中,=与==并没有在基本类型和类类型的不同。(OK)
其他(感悟、思考等,可选)
在看完第六章的继承后,觉得和C语言中的函数调用有些许相似之处,为此对比了两者的异同:
1.首先,Java语言与C语言本身就是两种不同思维的语言。C语言是面向过程的语言,就是我们要干一件事情,那么一步一步逐次来做,直到完成,其中可能就要调用一些函数,被调用的函数也是过程执行的。但是Java程序的开发思路是面向对象的,它是有一个类,这个类有属性,有方法。我们要干一件事的时候,就通过该类所定义的,或者说是具体化的对象来调用自己的方法来完成,这里所说的方法,你也可以理解为是一个函数(类似于C语言中的),但是只不过这个方法现在是属于这个类的,属于这个对象的,是有“主人”的,只有通过它的“主人”才能调用它。
2. 而面向对象的Java有一个特点就是继承,当某一个类A继承了类B那么类A就可以使用类B的方法了,因为A继承了B,同样A的对象也可以使用B的方法了.
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 5/5 | 1/1 | 10/10 | |
第二周 | 90/95 | 1/2 | 15/25 | |
第三周 | 131/234 | 1/3 | 20/45 | |
第四周 | 289/ 523 | 1/4 | 21/66 | |
参考:软件工程软件的估计为什么这么难,软件工程 估计方法 |
-
计划学习时间:20小时
-
实际学习时间:21小时
-
改进情况: