2020.4.2关于java.pta的总结
0.前言
本文是有关pta2020.3至2020.4所有面向对象程序课程(java)共三次作业的阶段性总结,是java学习最开始起步时期的成果。
1.作业过程总结
这三次作业,是从c++过渡到java的桥梁。
第一次作业是在全新的jdk环境中完成以前在c++习惯的事情,两者之间还是有很大的区别,比如键盘输入输出用到的函数和结构完全不同,main函数在组内的表达(
)
如同这些,对于刚接触java的我们来说都是全新的东西,需要学习和接触。同时,我们也学会了新的函数,迎接了jdk这个方便快捷的软件,使用这个软件,我从心底里感到舒适和方便,虽然熟悉它需要很长的时间,而且他没有相应的汉化版,但是好在相对应的学习已经融入课程里,不用操之过急。
第二次作业则开始分函数了,不过现在还是没有开始分class,所以相对应的作业环境较为轻松。但是,main函数黑箱的做法让我对自己编写的函数有了更为严苛的要求,这次作业比第一次更累,虽然花的时间反而是更短,而且正确率更高。因为每次出现问题的时候总是要去调试,没有经验的我总是找不到问题所在,让我心里很难受,只能安慰自己说这是为了熟悉jdk的用法而必须的功课。当然,结果来看确实是如此。
第三次作业是最难的,这个难尤其体现在第三题上,多个class的嵌套是一个很难的问题。由于没有经验,对于private变量的修改在使用函数的时候还有很多不安和迷惘,不过这些迷惘也很快就被打破了。反而是算天数差,前后n天时出现了最大值运行超时的问题,一直到现在都没有解决。按照常理是for循环经历过多的问题,但是基本上脱离了for循环我就找不到可靠稳妥的方法了,这方面上网也没有查到可用的函数,只能找机会去核对了。
三次作业让我初步学会了eclipse的用法,让我适应了基本的java编程,在此基础之上,可以学习新的算法,可以说是新的开始。
2.设计心得
在第三次作业中,每个class的模块化被用图形明显地表现了出来,虽说如此,模块化远远没有交代的那么容易,因为在第二次作业和第三次作业之间的函数虽然看起来什么都没有变,但是由于变量存储位置的变化,不同class里函数的分工发生了明显的变化,这个教训告诉我:要想依据面向对象的思路进行工作,仍然需要交代清楚很多东西,毕竟这次作业的class都在干什么自己最清楚不过,即使如此还是在交流中出了很多问题,真正实现面向对象仍然任重道远。
相比较而言,目前面向对象带给我的最直观感受是方便分类和查找错误,因为所有的代码全是自己的东西。而且,一旦调试出现错误立马可以通过明智的调试设计来知道哪里出了错误,再加上方便的eclipse让我的工作效率相比devc高了不少。当然,任务量也是相应地大了。
3.测试的理解与实践
第三次作业的第三题由于出现了关于天数间隔的错误,我被迫开始了相应的调试。而且另外一个“规范性”测试点也有报错,于是我就设计了一个关于2014.1.1和2020.1.1的问题,并且拿起了计算器亲手进行了计算,而结果发现是多了一天,而且是仅仅2019这一年多,2018,2017没有问题,所以我设计了一组数据,最后在最关键的2019.12.31-2020.1.1找出了错误,并且修改了自己的算法。
这个算法本来是为了能够直接避免for循环,只是通过计算就能计算两个日期之间的天数,但是还是引发了错误,所以这时候就体现了测试的重要性了。一个重要的教训:不经测试的函数投入了整个class群就会如同石沉大海一样,让人很难在错误中找到真正出问题的部分,所以在编写之前就应该检查一下代码是否真的没有问题。
4.课程收获
虽然紧张,但是这几次作业写的很开心。虽然紧张但是充实的四周,专门给我用来适应eclipse这个先天优秀的软件,让我度过了不错的时光。同时,我终于能够将自己所学勉强与自己想象中的成熟软件的结构拼凑在一起,去主动探索自己想开发出来的软件。虽然都是以后的事情,但是我看到了那种可能性。
5.对课程的建议
尽量多采用知识点视频解决的问题,设立专门的答疑视频,个人认为java的学习和其他科目完全不同,不是学到一个一个知识点而是解决一个一个盲区。
以上。
2020.4.2关于java.pta的总结的更多相关文章
- 阿里巴巴供应链平台事业部2020届秋招-Java工程师
阿里巴巴供应链平台事业部,2020届秋季校园招聘开始啦!Java开发工程师虚位以待,机会难得,占坑抓紧. 入职就发师兄,一对一师兄辅导. 在这里,你将有机会接触阿里集团的所有数据库.中间件等基础设施. ...
- 2020面试整理【java】
spring面试题 1.你对spring的理解 Spring 是个Java企业级应用的开源开发框架. Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用. Sprin ...
- 2020 重新出发,JAVA 学习计划
------ @[toc]# 前言 我呢已经工作七年了,一直没有换工作,因为我这个人没什么太大的野心,安安稳稳的生活就挺好,目前的公司虽然福利一般,但是工作稳定,环境也都很熟悉了. 但是今年,到目前为 ...
- JAVA PTA 7-1 作品评分 (10 分)
全国中小学生Scratch作品大赛拉开了序幕.每个参赛选手可以通过网络直接上传作品.本次比赛人人可做评委.每个网络评委可以通过网络对每一件作品进行打分.评分系统也是请程序高手设计的,能自动去掉一个最高 ...
- 2020 年了,Java 日志框架到底哪个性能好?——技术选型篇
大家好,之前写(shui)了两篇其他类型的文章,感觉大家反响不是很好,于是我乖乖的回来更新硬核技术文了. 经过本系列前两篇文章我们了解到日志框架大战随着 SLF4j 的一统天下而落下帷幕,但 SLF4 ...
- 2020年薪30W的Java程序员都要求熟悉JVM与性能调优!
前言 作为Java程序员,你有没有被JVM伤害过?面试的时候是否碰到过对JVM的灵魂拷问? 一.JVM 内存区域划分 1.程序计数器(线程私有) 程序计数器(Program Counter Reg ...
- 2020由浅入深最强Java面试题
1.String,StringBuffer和StringBuilder有什么区别? String是字符串常量,不可变对象,每次对String修改都等同于生成了一个新的String象,然后将指针 ...
- 2020重新出发,JAVA语言,什么是JAVA?
@ 目录 什么是 java? JAVA三大体系 Java SE Java EE JavaME java的主要特性和优势 1. 面向对象 2. 平台无关性 3. 可移植性 4. 简单性 5. 解释执行 ...
- 2020重新出发,JAVA语言,JAVA的诞生和发展史
java的诞生 在1991年时候,James Gosling在Sun公司的工程师小组想要设计这样一种主要用于像电视盒这样的消费类电子产品的小型计算机语言. 这些电子产品有一个共同的特点:计算处理能力和 ...
- 2020重新出发,JAVA学前了解,DOS常用命令
什么是 DOS ? DOS(Disk Operating System)是一个使用得十分广泛的磁盘操作系统. 常见的DOS有两种:IBM公司的PC-DOS ** 和 微软公司的MS-DOS,它们的功能 ...
随机推荐
- homebrew 安装node 切换node版本
注意:如果之前使用brew install node安装过node,需要先执行brew unlink node来'解绑'node 1.查找可用的node版本 brew search node 2.安装 ...
- shell转义字符
\n 回车 \b 单词边界 \w [a-Z0-9]中任意一个字符 \W [^a-Z0-9] \d [0-9]中任意一个数字 \D [^0-9 ...
- Chrome 中的 JavaScript 断点设置和调试技巧--转自hanguokai.com
你是怎么调试 JavaScript 程序的?最原始的方法是用 alert() 在页面上打印内容,稍微改进一点的方法是用 console.log() 在 JavaScript 控制台上输出内容.嗯~,用 ...
- h5项目
h5项目,用vue3,用vite搭建就好,是一个新的项目. 接口还在开发,可以用mock模拟. 现有信息:接口url,ui-url,原型url(各部分的交互关系)
- zabbix 使用小技巧
001.监控项指定时间执行 wd1-7h01m00 周一到周日,每天 01:00:00 执行一次 002.监控项某一段时间点每分钟执行一次 1-5,00:00-09:00 6-7,00:00-23:5 ...
- 模块二:os模块、sys模块、json模块、pickle模块,包
os模块 1 os模块是与操作系统交互的一个接口 2 import os: 3 1.获取当前工作目录 4 print(os.getcwd()) 5 6 2.切换到D:\yuan文件目录 7 os.ch ...
- ffmpeg将常见视频格式转换为mp4
1,avi.mkv.mp4等格式转为mp4 ffmpeg -i 1.avi -c copy 1.mp4 2,wmv.asf等格式转为mp4 ffmpeg -i 1.asf 1.mp4
- 【2020NOI.AC省选模拟#2】A. 旋转
题目链接 原题解: 把每个点的坐标视为复数,那么每次询问就是区间求平均数(先求和然后除以个数).一个点绕着原点旋转就是乘以$(\cos 60^\circ +i\sin 60^\circ)$. 一个点绕 ...
- CCF 201803-4 棋局评估
一. 对抗搜索的适用范围 在博弈论题目中,如果决策双方的获胜条件是截然相反的,即一方要求得分越高越好,另一方要求得分越低越好,这时我们就可以用上对抗搜索算法. 二.对抗搜索的主要思想 对抗搜索的核心思 ...
- 天龙八部<三联版>三
虚竹经历这么多事情,只想回少林寺,在面馆遇到出来玩的阿紫被阿紫调戏而破了荤戒.随后丁春秋到来,抓到阿紫,恰好慕容复也来到面馆,二人相斗,阿紫在打斗过程中被丁春秋刺瞎双眼,但却被游坦之救走, 最后慕容复 ...