20145324 《Java程序设计》第4周学习总结
20145324 《Java程序设计》第4周学习总结
教材学习内容总结
第六章
1、继承是为避免多个类间重复定义共同行为 A extends B A继承B的行为
2、一个子类只能继承一个父类 两者间有is-a关系 Role role =new White(); (从等号右边向左读)
3、编译成功 White white=new White();
Role role=White;
编译失败 White white=new White();
White white2=new role();
编译成功但执行时抛出ClassCastException
White white=new White();
White white=new (White)role;
4、多态就是通过单一接口操作多种类型的对象
5、重新定义Override :在继承父类后,定义与父类中相同的方法部署,但执行内容不同
6、使用abstract可以标示没有任何程序操作代码的方法为抽象方法,直接以;结束,表示这个定义类不完整无法生成实例
7、private<无关键字<protected<public
8、被声明为protected的成员,相同包中的类可以直接存取,不同包中的类可以在继承后的子类直接提取
9、在调用方法前加super可以取得父类(不能定义为private)中的方法定义,对于父类中的权限方法,只能扩大无法缩小
第七章
1、定义行为使用interface
2、类操作接口使用implement
3、P208
4、接口操作表示拥有某种行为 :右边是不是拥有左边的行为
教材学习中的问题和解决过程
代码调试中的问题和解决过程
P201 Ocean.java 会出现如图无法编译的情况
public class Ocean {
public static void main(String[] args){
doSwim(new Anemonefish("尼莫"));
doSwim(new Human("梅西"));
doSwim(new Submarine("黄色一号"));
doSwim(new Airplane("空军零号"));
doSwim(new FlyingFish("东海"));
}
static void doSwim(Swimmer swimmer){
swimmer.swim();
}
}
其他(感悟、思考等,可选)
学了几章之后逐渐感觉到了一些难度,有些代码有些抽象不是很能理解,但是因为是自学的原因,就有更多的时间去反复的阅读,理解甚至在网上搜索资料,这跟传统课堂老师一味的讲解知识点有很大的区别,加上因为要写博客,在写博客时将知识点梳理清晰。一直觉得敲代码很麻烦,但是敲多了之后就会发现对代码所表示的意思有新的理解。但是自己觉得对我而言代码得天天敲天天看,我发现只要两天不去看代码,上周所学的知识就会淡忘。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 500行 | 16篇 | 220小时 | |
第一周 | 30/20 | 1/1 | 10/10 | |
第二周 | 82/102 | 1/2 | 10/20 | |
第三周 | 158/260 | 1/3 | 10/30 | |
第四周 | 223/483 | 1/4 | 10/40 |