201621123010 《Java程序设计》第1周学习总结
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(二进制的前导的零)
本题中处理思路有两种:
- 直接将十进制数转化为32位的二进制数,再从左至右读取32位的二进制数,每读到一个
0则加前导的零总数加一,直至读到打一个不为零的数; - 分类处理,当输入的十进制数为
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周学习总结的更多相关文章
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...
- 20145213《Java程序设计》第一周学习总结
20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145330孙文馨 《Java程序设计》第一周学习总结
20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...
- 20145337 《Java程序设计》第九周学习总结
20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...
- 20145337 《Java程序设计》第二周学习总结
20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...
- 20145218《Java程序设计》第一周学习总结
20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...
- 《Java程序设计》第九周学习总结
20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...
- 《Java程序设计》第二周学习总结
20145224陈颢文<Java程序设计>第二周学习总结 教材学习内容总结 一.类型.变量与运算符 1.类型 整数: 可细分为为short整数(占2字节),int整数(占4字节),long ...
随机推荐
- Replication--复制与CDC和镜像
复制和CDC 都是使用logreader来从日志中读取数据的变更,然后写入到分发库(复制)或变更表中. 1> 单独创建复制发布 在该情况下,会在分发服务器上创建日志读取代理作业(ServerNa ...
- 将expression转化为数据类型int时发生算术溢出错误
在SQL Server 中,某列的数据都在int范围之内,但是使用sum聚集函数求该列和的时候,出现“将expression转化为数据类型int时发生算术溢出错误”. 问题在于定义的数据类型: 首先, ...
- 10.numpy基本用法
参考: https://blog.csdn.net/sinat_32547403/article/details/54017551
- JS中手动触发事件的方法
如果大家将一张网页看成一个form的话,大致上就成了一个web form的模型.在win form 下要想手动触发某一个对象的事件是很简单的,只要发送一条消息即可达成.(PostMessage) 但是 ...
- (转)《SSO CAS单点系列》之 实现一个SSO认证服务器是这样的!
上篇我们引入了SSO这个话题<15分钟了解SSO是个什么鬼!>.本篇我们一步步深入分析SSO实现机理,并亲自动手实现一个线上可用的SSO认证服务器!首先,我们来分析下单Web应用系统登录登 ...
- 2.5 The Object Model -- Observers
Ember支持监视任何属性,包括计算的属性.你可以使用Ember.observer为一个对象设置一个监视者: Person = Ember.Object.extend({ //these will b ...
- ACM-ICPC 2018 焦作赛区网络预赛 Solution
A. Magic Mirror 水. #include <bits/stdc++.h> using namespace std; int t; ]; inline bool work() ...
- .net core 2.2 & Mongodb
.net core 2.2 API项目中使用Mongodb 简单的CRUD封装 创建FoodPlan.Core 项目 创建IEntityBase.cs 接口约束 创建Single.cs 实体 IEnt ...
- Python3.x:基础学习
Python3.x:基础学习 1,Python有五种标准数据类型 1.数字 2.字符串 3.列表 4.元组 5.字典 (1).数字 数字数据类型存储数字值.当为其分配值时,将创建数字对象. var1 ...
- js输出大段html文档简便方法
原文链接:https://zhidao.baidu.com/question/586477237.html 把要输出的html全部写在某个id中,然后复制过去,你想放多少都行 <script t ...