201621123057 《Java程序设计》第1周学习总结
1.本周学习总结
.java
- - 源程序
.class
- - 字节码文件
JVM
- - 虚拟机
JRE
- - 执行环境
JDK
- - 开发工具包
其中,运行的是.class
,而非.java
,并且.class
必须在JVM
里运行(每种操作系统都有自己的JVM
,这是可跨平台运行的关键)。JDK
中包含有JRE
,JRE
中包含有JVM
。
2.书面作业
1.虚拟机
1.1 执行java程序的步骤是什么?为什么java程序可以跨平台运行?
答: 在记事本中编写好代码,并改为 .java
源程序,用 javac
命令将其编译成 .class
字节码文件,然后用 java
命令执行。
JVM
是跨平台运行的关键,.class
必须在JVM
上运行,只要平台上有JVM
,便可以运行无需再编译的 .class
。
1.2 什么是jdk?jdk, jre, jvm的联系是什么?
答:jdk
是java的开发工具包。
jdk
中包含有jre
和其它开发工具,jre
中包含有jvm
。
2.java与javac
2.1 java HelloWorld命令中,这条命令的含义是什么?HelloWorld这个参数指的是什么?
答: 含义是:启动JVM
执行HelloWorld.class这个可执行文件。
HelloWorld
是类名称。
2.2 Path变量有什么用?
答: 帮助操作系统寻找各路径下是否有所要用的指令。
2.3 使用java编写程序并运行与使用c语言编写程序并运行的步骤和生成的中间文件、目标文件有什么不同?
答: 对于java,源程序(.java
)编译成字节码文件(.calss
)运行;对于c ,则是从 .c
到 .obj
再到 .exe
。
3.实验总结:
3.1 PTA中怎么处理输入?怎么进行格式化输出?
pta中输入,
- 首先必须要有
import java.util.Scanner
,目的是为了导入Scanner
这个类;而且还要在main
中存在Scanner sc = new Scanner(System.in)
,也就是创建一个Scanner
对象。 - 大多数都要用到循环输入,这时候就要用到
while(sc.hasNextInt())
了,sc.hasNextInt()
就表示后面还有输入。 int a = sc.nextInt()
,sc.nextInt()
就表示输入一个整型。
输出
System.out.printf(a)
,就表示输出a
3.2 5-2(取数字)实验总结。
这道题用到了java中的Integer
类,
来直接完成进制转换;
取出每个数字的部分,使用到了数组(刚开始有想到用substring
,但它是取一个范围,这里要求单独取出数字),用%
的方法,将每个数字存入数组,然后对数组进行输出求和。
和同学交流后,知道了先用
Integer.parseInt()
函数将字符串转成十进制整型,然后在进行其它操作;
取数字时用charAt()
函数,将数字单个取出
刚开始提交时总出现输出格式错误,之后问同学了解到输出时`println()`自动换行,本题要用`print()` |
3.3 5-3(取数字浮点数)实验总结。
这道题我用到了replace
函数
来替换掉小数点和符号,然后类似上一题,进行求和。
4.Java主要应用在那几个方面?你对自己在这门课的目标与期许是什么?
Java主要应用在:大型企业级应用、大型网站、电子政务、游戏开发、嵌入式设备及消费类电子产品
上一年学了C语言,但谈不上会,学习期间,敲代码的时间花费的比较少,动手能力差。
设定一个目标:
我的计划 | |
---|---|
时间花费 | 每天至少一个小时 |
代码量 | 一周300行左右,一学期6000行左右 |
学习方式 | 动手实践 |
困难解决 | 思考-->百度-->问 |
3.使用码云管理Java代码
3.1 GIT使用
3.2 截图题集“Java基本语法”PTA提交列表
3.3 使用学姐、学长开发的jar程序统计每周的代码量
周次 | 行数 | 新增行数 | 文件数 | 新增文件数 |
---|---|---|---|---|
1 | 116 | 116 | 11 | 11 |