Java 第一周总结

第一周的作业。


1.本章学习总结

  • [x] 初识Java语言:Java的历史,三大平台,了解JVM/JRE/JDK
  • [x] Java开发环境的配置
  • [x] 用记事本编写Java程序,并用cmd编译运行
  • [x] 码云的使用,如何将代码放到本地和远程仓库中
  • [x] 博客园的使用,如何使用markdown文本编辑器进行博客的撰写,还有提交作业

2.Java Q&A

1.为什么java程序可以跨平台运行?执行java程序的步骤是什么?

  • 如果要运行Java程序就需要安装JRE(Java Runtime Environment),里面自带虚拟机JVM(Java Virtual Machine),这个JVM是根据不同平台而相异的。这样子的话,写好的Java程序首先被编译成后缀名为.class的字节码,最后直接在JVM可以直接将此翻译为依赖于平台的机器码。
  • 执行Java程序的步骤


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

  • JDK(Java Development Kit)是Sun公司针对Java开发人员发布的免费软件开发工具包。
  • JDK,JRE和JVM是包含关系。



Jave SE Platform at a GlanceOracle官网Java SE平台示意图


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

  • 一个类名而已吧。

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

  • 配置Path变量,cmd(胡扯的)操作系统才会在编译Java程序的时候可以找到对应的javac。(PATH 是操作系统用于查找来自命令行或终端窗口的必需可执行文件的系统变量。)Java“如何设置或更改 PATH 系统变量?”

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

  • C语言程序经过编译程序被翻译成目的程序(后缀名为.obj),然后与库程序进行连接,最后生成可执行文件(后缀名为.exe)。Java源程序通过编译器生成后缀名为.class的JVM字节码,再由字节码翻译为对应平台的目标代码,最后运行。

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

  • NetBeans
  • Eclipse
  • IntelliJ IDEA the Java IDE

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

  • 一个是官方的一个是开源的
  • OpenJDK只包含最精简的JDK
  • Oracle JDK不能用于商业用途,Open JDK可以
  • 另:OpenJDK6并不是Sun JDK6的分支,而是将OpenJDK7中JDK7的特性删掉,使之符合JDK6的规范,因而OpenJDK6实际上是OpenJDK7的分支

3.码云项目截图


4.实验总结

  • 放在pta平台运行的代码的类名必须为Main。
  • 数字 + ""可以将数字变成字符串,其实想一下平时在println方法中有时就是这样子。
  • 开根号用二分或者是牛顿迭代都是比较好的办法,相反地,从0往上加是比较傻的,而且误差值应该要比步进值来得小才能保证程序的正常运行,不然就会出现死循环把机器跑崩掉。
  • 关于前导0的问题
    • 首先对于一个数,首先很简单的转成二进制的字符串(这个字符串是不带前导0的),这边设为string,所以最后只要输出32 - string.length()就行了
    • but,如果这个数是0的话,非常地僵硬,因为这是一个字符串高位是0的字符串,虽然长度仅为1。那么这时候我们就需要特判一下,如果是0的话,直接输出32就好了。嗯,其他的数都不会出现这样的情况,所以还行。
    • 最后,只是为了试试markdown编辑器的代码,所以贴一下这道题的代码。(现在我用的编辑器是有代码高亮的,不知道博客园有没有,反正简单的流程图他都是不zici的,上面那个很丑陋的流程图本来就是用markdown写出来的)
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int x = scanner.nextInt();
String string = Integer.toBinaryString(x);
if (x == 0)
System.out.println(32);
else
System.out.println(32 - string.length());
scanner.close();
}
}

总结到这边就结束了!

(下面这一部分请老师不要算在作业里,谢谢!)

PS:最后的最后,关于代码补全的问题,已经很久没有用alt+/了,而是改为了二十六个字母全部都能触发代码补全的办法,虽然只是从原来的需要敲Alt+/+Enter变成了直接敲Enter,但是真的流畅了很多,到底有多流畅,大概就像喝汤一样流畅。不过鉴于没什么人关注我的博客,就说到这边吧,反正方法也很简单,想知道的可以谷歌或者粉我(手动滑稽)

201521123091 《Java程序设计》第1周学习总结的更多相关文章

  1. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  2. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  3. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  4. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  5. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  6. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  7. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  8. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

  9. 《Java程序设计》第九周学习总结

    20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

  10. 《Java程序设计》第二周学习总结

    20145224陈颢文<Java程序设计>第二周学习总结 教材学习内容总结 一.类型.变量与运算符 1.类型 整数: 可细分为为short整数(占2字节),int整数(占4字节),long ...

随机推荐

  1. 如何在MySQL中设置外键约束以及外键的作用

    1.外键的作用,主要有两个:     一个是让数据库自己通过外键来保证数据的完整性和一致性     一个就是能够增加ER图的可读性 2.外键的配置 1)先创建一个主表,代码如下: #创建表studen ...

  2. mysql 触发器(trigger)

    触发器(trigger):监视某种情况,并触发某种操作. 触发器创建语法四要素:1.监视地点(table) 2.监视事件(insert/update/delete) 3.触发时间(after/befo ...

  3. Java动态代理学习【Spring AOP基础之一】

    Spring AOP使用的其中一个底层技术就是Java的动态代理技术.Java的动态代理技术主要围绕两个类进行的 java.lang.reflect.InvocationHandler java.la ...

  4. 前端到后台ThinkPHP开发整站(6)

    今天终于把整个后台管理系统弄好了,其实没什么难点,只是作为一个Thinphp学习的练手项目,这个项目,现在还只能算是做了一半,还有前台展示方面的功能没有完成.先过一遍后台的功能吧! 1.首页 2.菜单 ...

  5. python之路——面向对象

    面向过程 VS 面向对象 面向过程的程序设计的核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西. 优点是:极大的降低了写程序的复 ...

  6. 使用进程池规避Python的GIL限制

    操作系统 : CentOS7.3.1611_x64 python版本:2.7.5 问题描述 Python的GIL会对CPU密集型的程序产生影响,如果完全使用Python来编程,怎么避开GIL的限制呢? ...

  7. Linux学习总结(十一)—— Linux常用命令:版本信息查看(RedHat、CentOS、Debian、Ubuntu、Fedora、Oracle)

    这篇文章收集了CentOS.Oracle.RedHat等系统查看发行版本.内核版本.位数的方法,欢迎补充. 系统 发行版本 -- 内核版本.位数 RedHat cat /etc/issue cat / ...

  8. testNG java.net.SocketException: Software caused connection abort: socket write error

    执行用例报错,提示 java.net.SocketException: Software caused connection abort: socket write error java.net.So ...

  9. Oracle 11g的安装

    选择对应版本的Oracle 11g: 解压之后,点击"setup.exe"进行安装. 如果希望接受Oracle的广告邮件可以留下自己的电子邮件地址, 如果希望通过My Oracle ...

  10. STL中map的用法

    map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能力,由于这个特性,它完成有可能在我们处理一对一数据的时候 ...