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变量的作用是指定命令的搜索路径。当在命令框执行java或javac等命令时,会到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. SSH secure shell 权威指南(转载)

    本书是一本介绍通信安全的书籍,如果你想保障你的通信安全,本书能给你一个很好的解决方案.本书从ssh协议介绍起,到具体的开源实现和商业实现.但本书同时介绍开源实现和商业实现,给人感觉比较乱.注意:由于o ...

  2. python之轮询、长轮询、websocket

    轮询 ajax轮询 ,ajax轮询 的原理非常简单,让浏览器隔个几秒就发送一次请求,询问服务器是否有新信息. 1.后端代码 from flask import Flask,render_templat ...

  3. Which adidas NMD Singapore is your favorite

    The adidas NMD Singapore just keeps the hits coming this fall with another change that's sure to bec ...

  4. 4.1 Routing -- Introduction

    一.Routing 1. 当用户与应用程序交互时,它会经过很多状态.Ember.js为你提供了有用的工具去管理它的状态和扩展你的app. 2. 要理解为什么这是重要的,假设我们正在编写一个Web应用程 ...

  5. 4.7 Routing -- Redirecting

    一.Transitioning and Redirection 从一个route调用transitionTo或者从一个controller调用transitionToRoute将会停止任何进程中的任何 ...

  6. Linux系统——http协议原理

    Web服务基础 用户访问网页基本流程 (1)在浏览器中输入域名,系统会查找系统本地的DNS缓存及hosts文件信息,查找是否存在域名对应的IP解析记录 (2)DNS解析域名为IP地址,系统会把浏览器的 ...

  7. IBM WebSphere MQ for net 报错 MQRC_NOT_AUTHORIZED

    最近进入新公司要维护以前的90年代的老系统 用NET对IBMMQ做测试 NET 4.0 +7.5 MQ 版本 待我写好NET调用的代码后出现错误MQRC_NOT_AUTHORIZED 折腾大半天往上找 ...

  8. Spring的一些面试题(转)

    一.spring工作原理: 1.spring mvc的所有请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责对请求进行真正的处理工作.2.DispatcherServlet ...

  9. PHP设计模式_适配器模式

    将各种截然不同的函数接口封装成统一的API. PHP中的数据库操作有MySQL,MySQLi,PDO三种,可以用适配器模式统一成一致,使不同的数据库操作,统一成一样的API.类似的场景还有cache适 ...

  10. poj1942 Paths on a Grid(无mod大组合数)

    poj1942 Paths on a Grid 题意:给定一个长m高n$(n,m \in unsigned 32-bit)$的矩形,问有几种走法.$n=m=0$时终止. 显然的$C(m+n,n)$ 但 ...