20175212 《Java程序设计》第2周学习总结

时间:2021-11-11 15:43:23

学号 20175212 《Java程序设计》第2周学习总结

教材学习内容总结

1.数据类型
此节介绍的数据类型与C中常用的相比仅多了Boolean(逻辑类型)、byte(取值范围:[-128,127])。
对于char类型的数据而言,Java的编码类似于C中的ASCII码,各种语言常用字符有其相对应的位置,并且可以通过强转将字符和顺序位置相互转化。
特别的,Java中的char必定无符号。
2.输入输出数据
对于输入而言,Java中的输入方法和我之前接触的C的方法不甚类似,因此我简述自己进行类比记忆的方法,若出现理解错误还希望老师同学指出。
20175212 《Java程序设计》第2周学习总结
以书上例2-3为例:
其中的核心语句即,使用Scanner创建对象:

Scanner reader = Scanner(System.in);

以我理解类似于C中的定义结构体,reader即为定义后的新对象。
对于输出而言,书中的例子基本都以System.out.println(“”+ +“” )为例,这种输出格式个人认为比 printf("格式控制部分",表达式) 方便
不少,不需要再次检查变量的类型,也减少了出错的可能性。
3.数组
数组的使用,基本就创建数组
int mytwo[][] = new int[3][4]
其他与C中区别不大。
4.第三章内容基本都与C中相同,都是一些基本得到语句,其中就按位运算符接触的不多,以及在for循环语句中:的遍历作用,其余的都是老东西不再赘述。

教材学习中的问题和解决过程

  • 问题1:输入基本型数据,使用Scanner有些记忆与理解困难
  • 问题1解决方案:回忆上学期C语言学习中的结构体定义方法,用类比的形式进行记忆并练习。
  • 问题2:对于某几例中import java.util.Scanner 不甚理解
  • 问题2解决方案:通过搜索得知,就是导入 java.util 包下的 Scanner 类,导入后才能使用它。import java.util.Scanner的作用:用来构建Scanner对象。其中import的作用:加载已定义好的类或包导入支持类(可以是JDK基础类或者自己编写的类),可以供本类调用方法和属性。

代码调试中的问题和解决过程

本周的作业都以实现类为主,也不难理解,不易出错,因此并未出现调试问题。

代码托管

20175212 《Java程序设计》第2周学习总结

上周考试错题总结

  • 如果在Main.java中撰写以下的程序代码:
public class Main { 

    public static void main() { 

         System.out.println("Hello World");     

  } 

} 

以下描述何者正确?
A 执行时显示Hello World
B 执行时出现NoClassDefFoundError
C 执行时出现出现找不到主要方法的错误
D 编译失败

正解为C,原因是不能理解题目选项的意思,经查证得知缺少了参数String[] args(一个字符串数组,用以接收来自程序执行时传进来的参数。)

其他(感悟、思考等,可选)

同为程序设计,在学习Java时可以多与我们之前学习的C进行类比学习,感觉在在之后更深入的学习中会有不错的效果。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 6/6行 1/1 20/20
第二周 245/251 1/2 18/38 掌握输入格式

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

参考:软件工程软件的估计为什么这么难软件工程 估计方法

  • 改进情况:

(有空多看看现代软件工程 课件
软件工程师能力自我评价表
)

参考资料