1. 本周学习总结


本周主要学习了五个知识点

  • Java是面向对象的语言
  • JDK,JRE,JVM的联系
  • javac及java指令
  • Java跨平台运行的原理
  • 新概念:类,类是面向对象中的概念

2. 书面作业


1. 虚拟机

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

Q1:执行java程序,首先要在记事本或Notepad++中编写好源代码并保存为".java"源文件,在命令框中执行javac命令后,生成“.class”的字节码文件,再执行java+类名命令,即可运行成功。

Q2:java之所以可以跨平台运行主要是因为".class"文件不是直接运行在操作系统上,而是运行在虚拟机(JVM)上,虚拟机是一个程序,可直接运行在各操作系统上,并执行“.class”字节码文件。

1.2 什么是jdk?jdk, jre, jvm的联系是什么?

Q1:JDK应该是Java Development Kit,是Java语言的软件开发工具包,没有JDK的话,无法编译Java程序。

Q2:三者的联系简单来说就是JDK包含JRE,JRE又包含JVM。


2. java与javac

2.1 java HelloWorld命令中,这条命令的含义是什么?HelloWorld这个参数指的是什么?

Q1:这条命令的含义是,执行类名为“HelloWorld”的字节码文件。

Q2:“HelloWorld”这个参数指的是一个类名。

2.2 Path变量有什么用?

path变量的作用是指定命令的搜索路径。当在命令框执行javajavac等命令时,会到path变量指定的路径中查找相对应的命令程序。

参考自默名守候的博客

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

使用Java编写程序保存的源代码文件后缀为“.java”,C语言保存的源代码文件后缀为“.c”;java运行的为后缀为“.class”的字节码文件,而C运行的是“.exe”的可执行程序。


3.实验总结(不得出现大段代码):

3.1 PTA中怎么处理输入?怎么进行格式化输出?

Q1:PTA中处理输入时,首先要import java.util.Scanner;导入Scanner类,之后通过Scanner sc = new Scanner(System.in);构造一个Scanner对象,并与System.in关联,实现控制台输入。而Scanner类中,next()nextLine()读取字符串,nextInt()nextFloat()读取整数和浮点数及通过hasNextXxx进行判断,nextDouble()读取浮点数及输入多个数字求总和平均数。

参考自墨子冰的博客

Q2:格式化输出时需使用代码段System.out.print();System.out.println();后者与前者相比在输出时会自行增加一个换行。若是直接输出字符串时,则需要以“”号包括,连续输出时中间需以+衔接。

3.2 5-2(取数字)实验总结。

该实验中进制转换模块可通过java的Integer类来直接实现转换。

String B = Integer.toBinaryString(a);
String O = Integer.toOctalString(a);
String H = Integer.toHexString(a);

而拆分数字模块我则是利用charAt()对输入的字符串一一检视,对符合ASCLL值在48~57区间内的位数字,取出来并存起来,转换类型为整形后相加,不符合的则直接舍去。

3.3 5-3(取数字浮点数)实验总结。

本题类似题5-2(取数字)的拆分数字模块,因而我用同样的思路,使用charAt()的方法,将数字取出,舍去符号,将字符转换为整形后在进行相加。

3.4 5-5(二进制的前导的零)

本题中处理思路有两种:

  1. 直接将十进制数转化为32位的二进制数,再从左至右读取32位的二进制数,每读到一个0则加前导的零总数加一,直至读到打一个不为零的数;
  2. 分类处理,当输入的十进制数为0时,则直接输出前导的零总数为32,非零时,则将转化获得的二进制数转为字符串类型,以str.length()读取该字符串长度,再以32扣除,即得到结果。

    本题中考虑到转为32位的二进制数较难,因而我采用的是第二种方法。

4.Java主要应用在那几个方面?你对自己在这门课的目标与期许是什么?

  • Java目前来说应用层面还是很广的,包括了安卓Apps,网站应用,软件工具,嵌入式领域以及大数据技术等领域。
目标 学有所成,不单单是应付考试
每周花费时间 当前阶段预估每周投入九小时以上
代码量预估 预估每周两百行以上,一学期4000多行
学习方式 理论实际多结合,多一些代码编写,不再片面只抓理论
解决困难 有困难找百度,解决不了的情况下咨询同学或是学姐、学长、老师

3.使用码云管理Java代码


3.1 GIT使用








3.2 截图题集“Java基本语法”PTA提交列表




3.3 使用学姐、学长开发的jar程序统计每周的代码量

周次 总代码量 新增代码量 总文件数 新增文件数
1 90 90 5 5

201621123010 《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. git-【十】忽略文件

    1.在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件. 不需要从头写.gitignore文件,GitHub已经为我们准备了各种配置 ...

  2. selenium3.0 远程模式

    准备工作: 1. 安装chrome浏览器 2. 下载selnium-server-standalone-3.0.1.jar 步骤: 1. java -jar selnium-server-standa ...

  3. loadrunner11的移动端性能测试之场景设计

    测试步骤之场景设计(Controller) 进入手工场景 准备好脚本后就可以进行场景设计和执行场景了,从VuGen中进入,见下图: 进入后第一个为目标场景,选择第二个更灵活的手工场景,我的目标人数20 ...

  4. JDBC连接数据库(一)

    原文地址http://www.cnblogs.com/hongten/archive/2011/03/29/1998311.html JDBC连接数据库 创建一个以JDBC连接数据库的程序,包含7个步 ...

  5. redhat 5 samba配置

    1.检查安装包 #rpm –qa | grep samba 必须有以下安装结果 samba-3.0.25:samba-common-3.0.25:samba-client-3.0.25:samba-s ...

  6. Status Code状态码详解对照表

    状态码 含义 100 客户端应当继续发送请求.这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝.客户端应当继续发送请求的剩余部分,或者如果请求已经完成,忽略这个响应.服务器必须在 ...

  7. python openpyxl 封装Execl常用操作的方法

    封装Excel操作方法:先装openpyxl:pip install openpyxl==2.4.5(可以指定版本) 封装脚本:#encoding=utf-8 from openpyxl import ...

  8. javascript模式(2)--模块模式

    在nodeJs中,可以定义自己的模块,然后通过exports来暴露API.一般是这么写的:模块依赖,私有成员和要暴露的对象.在原生js中也可以有类似的写法来组织自己的代码.可以提供一个松耦合.结构清晰 ...

  9. 前端学习笔记之HTML/CSS 速写神器 Emmet

    HTML/CSS 速写神器:Emmet 在前端开发的过程中,一个最繁琐的工作就是写 HTML.CSS 代码.数量繁多的标签.属性.尖括号.标签闭合等,让前端们甚是苦恼.于是,我向大家推荐 Emmet, ...

  10. Java序列化(Serialization)

    关于Java的序列化的文章在网上已经够多了,在这里写关于Java序列化的文章是对自己关于这方面的的一种总结,结合以前的开发经验与网上的资料,写了这篇文章,对自己是有着巩固记忆的作用,也希望能够对大家有 ...