第一周作业及第一周学习总结

时间:2021-09-22 22:16:45

第一周学习总结:

初步认识java,认识到java和c语言的相似与不同,相似在于其中许多语法是一样的。不同在于,编写java程序之前要做很多前期准备,例如安装JDK,设置环境变量等工作,之后还可以直接在cmd进行编译和运行,意识到java在现实生活中起到了很大的作用,包括android开发等等,发觉java是一门很有意思的语言,一切的一切,都从Hello JAVA开始!

1.为什么java程序可以跨平台运行?执行java程序的步骤是什么?(请用自己的语言书写)

answer:

因为在java编译时,并不直接编译为相依于某平台的0,1序列,而是翻译为中介格式的位码。只要目标平台安装了依于该平台的虚拟机JVM,就能将位码编译为相依于平台的机器码。

步骤:

  • 下载安装JDK(包括修改添加环境变量);
  • 撰写JAVA原始码;
  • 打开cmd,启用JVM,先执行javac编译该java程序(此时文件后缀为*.java)
  • 编译后文件后缀名为*.class,可用JVM执行

2.什么是jdk?jdk,jre,jvm的区别是什么?

answer:

JDK(Java Development Kit)提供将.java文件编译为.class文档的工具程序。

Differences:

  • JRE与JDK相比,它不包含开发工具——编译器、调试器和其它工具;
  • 我们利用JDK(调用JAVA API)开发了属于我们自己的JAVA程序后,通过JDK中的编译程序(javac)将我们的文本java文件编译成JAVA字节码, 在JRE上运行这些JAVA字节码,JVM解析这些字节码,映射到CPU指令集或OS的系统调用。

3.java HelloWorld命令中,HelloWorld这个参数指的是什么?

answer:

HelloWorld指的是HelloWorld.java经过编译后的.class可执行文件,是一个类名。

4.设置path变量有什么用?

answer:

在path中设定工具程序(javac)的路径信息,系统才可以在path中找到你要执行的指令。设置完成后,就可以执行javac而不用额外指定路径。

5.使用java编写程序并运行与使用c语言编写程序并运行的步骤和生成的中间文件、目标文件有什么不同?

answer:

  • C语言编写程序之后的文件为.cpp,编译之后生成中间文件为.obj(object),最终生成的目标文件为可执行文件.exe.
  • java编写后生成.java,编译之后生成二进制文件.class,打包后生成.jar(类似于exe)。

6.Java语言有哪几种开发平台?

answer(From Baidu):

  • Eclipse :Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。这个比较干净,不带任何插件。
  • MyEclipse:MyEclipse,是在eclipse 基础上加上自己的插件开发而成的功能强大的企业级集成开发环境,主要用于Java、Java EE以及移动应用的开发。MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持相当不错。这个做web项目比较好,因为集成了很多的网页插件。
  • NetBeans:NetBeans是开源软件开发集成环境,是一个开放框架,可扩展的开发平台,可以用于Java、C/C++,PHP等语言的开发,本身是一个开发平台,可以通过扩展插件来扩展功能。在java开发方面类似于前两个,用起来一般。
  • Jbuilder:Jbuilder是一个可视化JAVA开发工具。它是在Java2平台上开发商业应用程序、数据库、发布程序的优秀工具。它支持J2EE,所以程序员可以快速的转换企业版Java应用程序。大型的软件,写起来比较麻烦,收费软件。

7.Oracle JDK与Open JDK有何不同?

answer:

Oracle JDK的源代码可用于个人研究使用,但禁止任何商业用途,而Open JDK允许商业上的使用,因此,Open JDK必须删掉许多在两个授权之间用冲突的程序代码。

实验总结:

Pta5-4:(选做)

problem:

'在编写循环退出条件“x-平方值 < epsilon or 平方值>=x”时,错把for(;x - i * i >= epsilon && i * i < x;i += step)之中的“&&”且条件写成“||”或条件,导致程序结果运行出错,总是会比正确结果多一个步长或者少一个步长,今后会多加注意。'
  • 发现java和c很大一个不同就是java有自带的函数用法,比如Integer.toBinary等等,这样很大的减少了编程难度。
  • 使用pta去accept代码的时候,一定要把类名改为Main,虽然还没搞清楚原因。
  • 了解到快速使用快捷键“Alt + /”所带来的好处。
  • 学会使用Markdown来写实验作业,感觉有趣了许多。

GIT

第一周作业及第一周学习总结