20175303 2018-2019-2 《Java程序设计》第五周学习总结
教材学习内容总结
•使用关键字interface来定义一个接口,定义接口分包含接口声明和接口体。
•接口体中包含常量的声明(没有变量)和抽象方法两部分,接口体中只有抽象方法,没有普通的方法,而且接口体中所有的常量的访问权限一定都是public,而且是static常量,所有的抽象方法的访问权限一定都是public。
•接口由类来实现以便使用接口中的方法。使用implements声明该类实现一个或多个接口,如果实现多个接口,用逗号隔开。
•如果一个非抽象类实现了某个接口,这个类必须重写这个接口中的所有方法,重写接口方法时方法的访问权限一定要明显的地用public来修饰。
•如果一个类声明实现一个接口,但没有重写接口中的所有方法,那么这个类必须是抽象类。
•程序可以用接口名访问接口中的常量。
•如果一个类声明实现一个接口,那么该类可以直接在类体中使用该接口中的常量。
•如果父类实现了某个接口,那么子类也就实现了某个接口。
•子接口将继承父接口的全部方法和常量。
•用接口声明的常量称为接口常量。
•接口回调与对象的上转型对象相似,把实现某一接口的类创建的对象的引用赋值给该接口声明的接口变量,那么该接口变量就可以调用被类实现的接口方法,但接口回调无法调用类中的其他非接口方法。
•接口可以抽象出重要的行为标准,该行为标准用抽象方法来表示。
•可以把实现接口的类的对象的引用赋值给接口变量,该接口变量可以调用被该类实现的接口方法,即体现该类根据接口里的行为标准给出的具体行为。
•由接口产生的多态就是指不同的类在实现同一个接口时可能具有不同的实现方式,那么接口变量在回调接口方法时有可能具有多种形态。
•如果一个方法的参数是接口类型,我们就可以将任何实现该接口方法的实例的引用传递给该接口参数,那么接口就可以回调类实现的接口方法。
•abstract类和接口的比较:
•abstract类和接口都可以有abstract方法。
•接口中只可以有常量,不能有变量;而abstract类中既可以有常量,也可以有变量。
• abstract类中也可以有非abstract方法,接口不可以。
教材学习中的问题和解决过程
这一章的内容总体和上一章很像,并没有太多难理解的东西。
代码托管
今天准备结对项目,测试了几个网上找的特定功能的代码,所以今天的代码显得特别多。
上周考试错题总结
1.这题脑抽了多选了C,A中UML通过使用虚线连接类和他的接口。
2.如果一个非抽象类实现了接口,那么这个类必须重写接口中所有方法,且明显的用public修饰,B没public错,C没重写接口中的方法错。A、D应该都对。
3.AbstractSome是抽象化的,无法实例化,即不能创建自己的对象。
感悟
这周除了第六章课本以及视频的学习,还写了一个学生数据管理的实验,应该算是那九个实验里边相对来说稍微难一点的。头天晚上写的全是错误,错误比代码行数还多,但是整体的框架和每部分都没太大问题,问题出在框架与每部分代码的连接上。第二天晚上重新改,一部分一部分的改得问题越来越少,很爽。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 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 | |
第五周 | 1460/3252 | 1/4 | 30/110 |