java1-3总结 19201421-吴志越
关于最近几次作业,从C语言到Java的过渡,也就是从面向过程到面向对象的过渡。其中,一共有三次作业,前俩次可能更加偏向于过程的设计,利用C语言的想法就可以完成,但是,从需要使用类的开始,就逐渐向对象偏离。
前两次作业的主要目的,是学会日期的设计与使用还有一些简单的编程问题,可能更加取向于基础,目的是为了适应Java的编程语言,同时,日期的设计与使用上,是为了下一次作业做铺垫,下一次作业对日期的使用很多,而且都是自行设计的日期,后来的作业也同样需要自行设计日期方法。但是也有不同的地方,后面的作业作用范围更大,需要将代码设计的更加完美,几乎和工业级代码持平。在对面象过程到面向对象的思想上,每一次作业也是在不断的改变推进,不断向面过程的方面过渡。第一和第二次作业都可以选择不使用类,但是第三次作业就必须使用类,类在设计方面目前还不会很复杂,不会出现类之间方法的相互调用,后来的类更是复杂会出现很多调用。比如在日期的设计上,从年月日一起使用到后来的不断分开,使年月日各成为一个对象,就是向面向对象过渡。在第一次的作业完成过程中对于星期几的判断就是用了不同的方法进行测试。最后使用了最笨的方法,将年月日分开使得代码很长,但是运行时间的需求很短。在后面求下n天的时候同样是采用了很笨的方法但代码有所减少。对于第二次作业,这些编程题,都是为了适应Java的编程方法所出,而且都不是很复杂,由于没给测试点所以具体也不知道自己哪里错了。没拿到满分,也是因为自己太粗心所导致的。第三次作业中,主函数已经给出,但是类需要我们自己设计。对于类的设计,第一个题目是为了让我们适应,后面的三题,则是需要根据不同的方法进行设计,三个主函数都相同。但是类却不同,需要根据不同的方法进行设计。在对于前n天的球阀中,虽然和第一次作业很像,但是n的范围很大,所以我采用了不同的方法设计,使用了循环,随让简化了代码,但是增加了时间,导致求最大时运行代码超时。后两题需要使用聚合,使得年月日各为一类。前两次作业花费的时间加起来都没有第三次多,因为自己的编程能力很差同时自己又是个粗心的人,导致后来的代码频频出错,越打越慢。想到以后还需要工作,会更加注意代码的质量,改变自己粗心的毛病。
面向对象与面向过程有很多不同的地方,面向过程强调的更是一个个过程。比如说人和兔子,对于面向过程。就分别将属性和能够完成的动作进行设计,不会对他们进行分类,而对于面向对象来说,就是将人和兔子作为两个类,然后将他们自身具有的属性还有动作,分别放入两个类中,可能他们之间的动作或者属性会相同,这就可以考虑继承关系了。对于面向对象的基本原则,最重要的应该为类,类中会产生数据,或者方法,这样就会对每一个对象进行设计,可以将它们的动作作为方法,将属性作为数据,使得每个类都有它固有的属性与方法,还可以有类的继承,这让不同的类之间又有了联系,他们共同作用,最后根据人们的意愿,完成需要的事情。对于OO编程思维的理解,重要的就是一个整体中,所需要完成的事情,可能这个类很简单,那么只需要更少的代码实现这个类,如果这个对象很复杂,那么就需要更多的方法来实现这个类。如果类之间没有出现继承关系,那么哪个类有错去修改哪个类就行,不需要对整体进行大幅度的修改。
关于测试对于编码的重要性这是不用质疑的,在程序员把代码完成后,主观意义上,他会觉得自己没有任何错误,觉得功能都能够实现,但是客观上,可能会出现很多问题,这些就是被程序员所忽视的,这样就更加利于代码的完善,可以更好的改正错误满足客户的需要。同时也可以提高代码的质量和速度。如果我测试用例,我会首先选择极值,对最小或者最大的数据进行测试,然后再使用大量的正常值对其进行测试,还有大量的错误值也需要进行大量的测试。
关于课程教训,就是一定要有一本自己的参考资料,还要学好每一个计算机语言,不然到后面会越学越困难,可能别人只要花费你一半的时间,他们就可以做得更好。关于课程收获,可能是自己已经入门了一个新的计算机编程语言,让以后可以更好的面对自己的工作台计算机吧。
java1-3总结 19201421-吴志越的更多相关文章
- Java5-7作业总结(第八次作业)19201421-吴志越
前言:关于此次三次作业,相比于前3次难度着实高了一个档次,第五次作业,虽然对于工具类没有很高.但是第一题的复杂程度很高,对于正则表达式有很高的要求,需要使用很多正则表达式的方法,而且不能有一处错误,对 ...
- shufe前辈名师
前辈名师 姓名 现职/原职 郭秉文 中国现代大学之父.国立东南大学校长.哥伦比亚大学教育学博士,该校第一任校长.为了纪念郭秉文先生,勉励优秀学子,郭夏瑜女士在上海财经大学等校设立了“郭秉文奖学金” 马 ...
- 阿里巴巴开源Weex 开发教程
Weex 是什么 Weex是阿里发布的一款用WEB方式开发原生app的开源产品 Weex能够完美兼顾性能与动态性,让移动开发者通过简捷的前端语法写出Native级别的性能体验,并支持iOS.安卓.Yu ...
- Bootstrap布局设计
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...
- 前端开发福音!阿里Weex跨平台移动开发工具开源-b
阿里巴巴今天在Qcon大会上宣布跨平台移动开发工具Weex开放内测邀请.Weex能够完美兼顾性能与动态性,让移动开发者通过简捷的前端语法写出Native级别的性能体验,并支持iOS.安卓.YunOS及 ...
- javascript模块
//使用模块 template = {}; template.createObj = (function(){ //私有成员 var _age = ""; var _name = ...
- Winform 实现像菜单一样弹出层
原文:Winform 实现像菜单一样弹出层 在实际工作中,如果能像菜单一样弹出自定义内容,会方便很多,比如查询时,比如下拉列表显示多列信息时,比如在填写某个信息需要查看一些信息树时.这个时候自定义弹出 ...
- python课时二
通过上个博客的学习,相信大家已经对Python是什么东西应该有了相对应的了解,这里也包括Python的一些语法(比如Python在写for循环和if判断的时候都是会有缩进的).这张博客大概会对Pyth ...
- Openwrt自定义CGI实现
此文已由作者吴志勐授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 安装uhttpd. 在编译openwrt前,输入make memuconfig,查找Network -> ...
随机推荐
- 当阿里面试官问我:Java创建线程有几种方式?我就知道问题没那么简单
这是最新的大厂面试系列,还原真实场景,提炼出知识点分享给大家. 点赞再看,养成习惯~ 微信搜索[武哥聊编程],关注这个 Java 菜鸟. 昨天有个小伙伴去阿里面试实习生岗位,面试官问他了一个老生常谈的 ...
- 201771010108-韩腊梅 实验一 软件工程准备—<对软件工程的初步了解>
项目 内容 课程班级博客链接 https://edu.cnblogs.com/campus/xbsf/nwnu2020SE 这个作业要求链接 https://www.cnblogs.com/nwnu- ...
- PTA数据结构与算法题目集(中文) 7-9
PTA数据结构与算法题目集(中文) 7-9 7-9 旅游规划 (25 分) 有了一张自驾旅游路线图,你会知道城市间的高速公路长度.以及该公路要收取的过路费.现在需要你写一个程序,帮助前来咨询的游 ...
- Mysql数据库错误代码大全
Mysql数据库错误代码大全 出现较多的一些网页代码提示的意思: 1016错误:文件无法打开,使用后台修 ...
- docker-compose 部分错误
Get https://hub.17kxkx.com/v2/: dial tcp 39.106.209.67:443: connect: connection refused vim /etc/doc ...
- ubuntu18.04配置宽带上网
1.将 /etc/NetworkManager 目录下的 managed标签改为true 2.将 /etc/network/ 目录下的 interfaces文件只留下前两行: auto lo ifac ...
- canvas 实现光线沿不规则路径运动
canvas 实现光线沿不规则路径运动 此文章为原创,请勿转载 1.svg实现 2.canvas实现 3.坑点 svg让动画沿着不规则路径运动 查阅svg文档后发现,svg动画运动有两种实现方式,且都 ...
- 多线程设置flag标志位实现同步
信号灯解决同步问题 我尽量注释了代码,可以很容易理解了. package Thread; /** * 信号灯 * 借助标志位 */ public class FlagThread { public s ...
- Mybatis-项目结构
源文件:https://github.com/569844962/Mybatis-Learn/blob/master/doc/Mybatis%E6%95%B4%E4%BD%93%E6%9E%B6%E6 ...
- ASE课程总结 by 朱玉影
收获: 最大的收获应该就是对待选题要慎重吧,虽然前期做了一下调研,但是还是不够,所以到最后我们的项目才会不能公开发布,项目中间也是波折不断,导致我们走了很多弯路,浪费了很多时间吧.选题一定要慎重,慎重 ...