20189208 2018-2019-2 《Java程序设计》第2周学习总结
教材学习内容总结
第四章
Java是一种OOP语言,创建对象基于一个模板-类。类的成员:字段、方法、构造方法。
抽象、封装、方法重载。抽象:用对象来表示现实实物。封装:将对象的一部分隐藏,保护。方法重载:同名但不同签名的多个方法。有包的类,编译时javac后面加上-d。enum在12章。
Java垃圾收集程序。
第七章
extends
继承、覆盖。继承使代码可拓展。所有的类都继承了java.lang.Object类。第十章接口实现多继承效果。方法覆盖可以修改父类方法。finial可以防止子类化。
第十章
接口是一种协议。
第十一章
多态使对象能根据接收到的方法决定使用哪个方法实现。
教材学习中的问题和解决过程
- 问题1:final/finally
- 问题1解决方案:final类中的成员变量可以根据需要设为final,但是要注意final类中的所有成员方法都会被隐式地指定为final方法。在执行return之前,会执行finally块中的程序。注意区别。
- 问题2:10.2.1代码运行有问题
- 问题2解决方案:最后一行改为
public static int final STATUS =1;
代码调试中的问题和解决过程
教材中代码调试有问题先去https://shimo.im/doc/1i1gldfsojIFH8Ip/看看,如果别人没有提出相同问题,可以编辑文档添加,然后把自己提出的问题复制到下面:
- 问题1:码云上传失败。
- 问题1解决方案:根据报错提醒,需要提供用户名和password类似绑定叭。毕竟前面都登陆过一次了。
- 问题2:调式过程中无任何输出。
- 问题2解决方案:第一次条件断点设置的55,但是输入为9208导致断点设置失败,必须要测试55才行。并且其余的单句断点并不会有输出,程序运行完直接关闭,所有导致没有结果。应设置执行完不关闭或者执行完有输出结果。
代码托管
//==========Today=====================================
code summary infomation:
180
documents summary infomation:
25
//==========This Week=================================
code summary infomation:
180
documents summary infomation:
25
6db200d - ssrChan,2019-03-10 05:01:05 -0700: init docs with empty java_homework_week2.md
c9a1af6 - ssrChan,2019-03-10 04:59:12 -0700: print student id and name
b1d2d91 - ssrChan,2019-03-10 04:56:44 -0700: add run script
4b9e941 - ssrChan,2019-03-10 04:41:51 -0700: finished Hello World
//==========All=================================
code summary infomation:
180
documents summary infomation:
25
commit history:
6db200d - ssrChan,2019-03-10 05:01:05 -0700: init docs with empty java_homework_week2.md
c9a1af6 - ssrChan,2019-03-10 04:59:12 -0700: print student id and name
b1d2d91 - ssrChan,2019-03-10 04:56:44 -0700: add run script
4b9e941 - ssrChan,2019-03-10 04:41:51 -0700: finished Hello World
上周考试错题总结
错题原因、理解见注释
- 错题1 多维数组长度、多维数组行的长度
String[][] strs = {
{"Java", "Java", "Java"},
{"Java", "Java", "Java", "Java"}
};
System.out.println(strs.length);//数组行数
System.out.println(strs[0].length);//第0行长度
System.out.println(strs[1].length);//第1行长度
//2 3 4
- 错题2 数组
String[] strs = {"Java", "Java", "Java", "Java", "Java"};//产生1个string实例
- 错题3 数组
String[] strs=new String[5];//产生0个string实例
- 错题4 数组
String[][] strs = new String[2][5];//0个实例
- 错题5 覆盖方法
class Some{
void doService(){
System.out.println("some service");
}
}
class Other extends Some{
@Override //标记子类中被覆盖的方法
void doService(){
System.out.println("others srrvice");
}
}
public class Main{
public static void main(String[] args){
Other other = new Other();
other.doService();
}
}
//others srrvice
- 错题6 数据类
public class Some{
public static void someMethod(int i){
System.out.println("int 版本被调用");
}
public static void someMethod(Integer integer){
System.out.println("Integer 版本被调用");
}
}//int 版本被调用
- 错题7 数组的引用与复制
public class Some{ public static void
main(String[] args) {
int[] arr1={1,2,3};
System.out.println(arr1[1]);
int[] arr2=arr1;//arr2为arr1的引用,arr2会改变arr1
arr2[1]=20;
System.out.println(arr2[1]);
System.out.println(arr1[1]);
}}//2 20 20
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | ----- | --- | --- | |
第二周 | 180/300 | 2/2 | 21/21 | |
第三周 | ---/600 | -/3 | --/-- | |
第四周 | ---/900 | -/4 | --/-- |