OO第一单元(前四周)作业总结

OO第一单元(前四周)作业总结要求(第四次作业)

0.前言

本次博客针对的是本人学习Java的第一阶段的三次作业的作业总结

第一次作业的内容是:7-1 计算税率 (20分),7-2 判断坐标点所在范围 (20分)7-3 电话键盘字母数字转换 (20分)7-4 判断三角形类型 (20分)7-5 统计最大数出现次数 (20分)

第二次作业的内容是:7-1 求一元二次方程 (10分)7-2 判断闰年及星期几 (30分)7-3 求下一天 (30分)7-4 求前N天 (30分)

第三次作业的内容是:7-1 用类解一元二次方程式 (10分)7-2 日期类设计 (30分)7-3 日期问题面向对象设计(聚合一) (30分) ,7-4 日期问题面向对象设计(聚合二) (30分)。

1.作业过程总结

第一次作业所用到的知识点,大部分是面向过程的知识(即C语言的知识),少部分的是面向对象语言(Java)的基础知识,如Java的编程的语法,编程习惯(变量与运算符之间要有空格等)等,本次作业需要运用到循环结构和选择结构的知识点,通过本次作业,让Java中的循环结构和选择结构的知识点在我们的脑海中得到进一步的强化。

第二次作业则是面向对象语言的知识占大部分,开始运用到Java语言的中的方法,以及编程思维和编程习惯慢慢地由面向过程的转向面向对象的。本次作业不仅仅是简单的循环结构就能解决问题,还需要运用到方法的知识点,而这块是面向对象和面向过程区分之处。

通过本次作业,让我们了解了存根用法和返回实数根的个数的方法solveQuadratic(double[] eqn, double[] roots);,判断是否为闰年的方法isLeapYear(int year) 及boolean 类型的知识点,求出year-month-day到0001-1-1的距离天数并返回的方法numOfDays(int year,int month,int day);,和根据天数来返回星期几的方法getWhatDay(int days);。

第三次作业所用到的知识点就更加广阔了,涉及到类与对象的定义、构造方法的重载与使用、属性与方法、类的设计原则以及类间关系等知识点。通过本次作业,让我们了解了检测输入的年,月,日是否合法的方法public boolean checkInputValidity();取得year-month-day的下n天日期的方法public DateUtil getNextNDays(int n);

2.OO设计心得

面向过程与面向对象的比较

1)语法方面,面向对象设计的语法更加精减,更能体现出代码所表达的含义,而面向过程的语法一般比较繁琐。

2)

②面向对象设计的基本原则理解

目前好像只是接触了类设计的的单一职责原则,对该原则的理解是不能跑题,方法必须围绕着类进行。取类名要做到见名知义,属性是分量。

③OO编程思维的理解

需知晓类与类的关系和调用方法吧

 

3.测试的理解与实践

①测试对于编码质量的重要性

通过测试,能够检验编码的质量的好坏

②假如让你设计测试用例,你会如何做

1)设计输入输出结果为合法的数据 2)设计输入输出结果为非法的数据3)设计5个以上的测试用例

4.课程收获

通过本阶段的学习,我基本了解并掌握了一些面向对象设计的语法(但还是有一些语法没有掌握)特别是运算符两边都要有空格,花括号直接在小括号后面。知晓了类设计的单一职责原则;类里的变量的属性一般为私有属性。了解了类和类的四种关系:耦合(关联,聚集,依赖,泛化)且耦合度要越低越好,内聚等的概念;类的封装性:private ,public ,protected,默认的(都可以不写);类的继承性:可复用性(父类parent class,超类super class,基类 base class,子类son class,派生类 derived class,及构造方法链的知识点);类的多态性:不同的对象,接收到同一个消息的时候,执行不同的操作。

 

总结这四周来在OO方面的教训及收获

教训是语法知识不牢靠,导致敲代码时经常因为某些语法问题卡壳或报错;将类图的转化为代码的能力未掌握,没有养成做题前,先画思维导图或程序流程图的习惯,以至于敲着敲着就忘了思路。

作业老是拖到最后做,以至于慢慢养成了拖延症,作业的完成度也低。收获是了解并掌握了一些面向对象编程的知识,类设计要注意的地方,类里的属性一般为私有属性,

对课程的建议

1)希望老师上课时多抽出一些时间来讲解作业,特别是思路吧。

OO第一单元(前四周)作业总结的更多相关文章

  1. OO第一单元三次作业总结

    写在前面 第一单元作业是针对输入的多项式进行格式合法判断,然后进行求导,结果长度优化,最后输出.三次难度递增,不断添加新的需求,总体感觉在实现方面没有多大困难(?),个人主要困扰环节是寻找自己未知bu ...

  2. 面向对象OO第一单元三次作业总结

    (一)第一单元的作业围绕着多项式的求导,从简单到复杂,主要的要求是 作业一:只有两种格式的因子:带符号整数(+02)和幂函数(x^+02). 作业二:在作业一的基础上添加了:sin(x)和cos(x) ...

  3. OO第一单元

    OO第一单元总结 目录 OO第一单元总结 前言 第一次作业 HW1基本思路 UML类图 代码规模 复杂度分析 方法复杂度 分析 类复杂度 分析 优化策略 第二次作业 HW2基本思路 UML类图 代码规 ...

  4. OO第一单元作业总结

    oo第一单元的作业是对多项式的求导.下面就是对三次作业分别进行分析. 第一次作业 分析 第一次作业相对来讲比较简单,甚至不用面向对象的思想都能十分轻松的完成(实际上自己就没有使用),包含的内容只有常数 ...

  5. 【作业1.0】OO第一单元作业总结

    OO第一单元作业已全部完成,为了使这一单元的作业能够收获更多一点,我回忆起我曾经在计算机组成课设中,经常我们会写一些实验报告,经常以此对实验内容反思总结.在我们开始下一单元的作业之前,我在此对OO第一 ...

  6. 北航OO第一单元作业总结(1.1~1.3)

    经过了三次作业之后,OO第一单元告一段落,作为一个蒟蒻,我初步了解了面向对象的编程思想,并将所学内容用于实践. 一.第一次作业 1.架构分析 本次作业需要完成的任务为简单多项式导函数的求解.表达式仅支 ...

  7. OO第一单元作业总结——表达式求导

    OO第一单元作业总结 第一次作业 基于度量分析代码结构 基本算法 第一次作业是简单多项式导函数求解,不需要对输入数据的合法性进行判定, 基本思想是用 (coeff, expo)表示二元组 coeff* ...

  8. 【OO学习】OO第一单元作业总结

    OO第一单元作业总结 在第一单元作业中,我们只做了一件事情:求导,对多项式求导,对带三角函数的表达式求导,对有括号嵌套的表达式求导.作业难度依次递增,让我们熟悉面向对象编程方法,开始从面向过程向面向对 ...

  9. OO第一单元总结

    OO第一单元作业总结 一.前言 开学四周,不知不觉已经做了三次OO作业.事实上,每一次作业对我来说都是很大的挑战,需要花费大量的时间和精力来学习. 虽然学得很艰苦,但最后还是连滚带爬地完成了.(好惨一 ...

随机推荐

  1. 并发编程之关键字(synchronized、volatile)

    并发编程主要设计两个关键字:一个是synchronized,另一个是volatile.下面主要讲解这两个关键字,并对这两个关机进行比较. synchronized synchronized是通过JMV ...

  2. vue 集成html5 plus

    首先要安装一个包 vue-html5plus npm i vue-html5plus -S 然后配置这个文件 在main.js添加一串代码 var onPlusReady = function (ca ...

  3. Thymeleaf模板引擎学习

    开发传统Java WEB项目时,我们可以使用JSP页面模板语言,但是在SpringBoot中已经不推荐使用JSP页面进行页面渲染了.从而Thymeleaf提供了一个用于整合Spring MVC的可选模 ...

  4. WindowsTerminal折腾记

    背景 Windows Terminal最近出了1.0版本,界面非常美观,但要配置好还是要下一番功夫,而且网上的教程都是互相抄,所以特将我的配置过程记录如下. 字体 首先是字体,默认字体英文不错,但中文 ...

  5. 题解 CF1354B 【Ternary String】

    题意 给出一个字符串,只包含 \({1,2}\) 或 \({3}\) .从中找出一个长度最短的子串,要求至少包含 \({1,2,3}\) 各一次,并输出其长度. 输入格式 本题有多组测试数据 第一行一 ...

  6. vue : watch、computed、以及对象数组

    watch和computed是vue框架中很重要的特性. 那么,他们是怎么作用于对象数组的? 今天我们就来探究一下. 上代码. <template> <div class=" ...

  7. Onedrive分享型网盘搭建 - OneManager

    注册账号 部署OneManager 注册完账号后打开网址:https://heroku.com/deploy?template=https://github.com/qkqpttgf/OneManag ...

  8. Unity 基于excel2json批处理读取Excel表并反序列化

    excel2json是一款将Excel表格文件快速生成json和C#数据类的高效插件,详情了解如下: https://neil3d.github.io/coding/excel2json.html 该 ...

  9. HITCON2017-web ssrfme

    <?php if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { $http_x_headers = explode(',', $_SERVER['HTT ...

  10. Android个人中心UI

    参考:https://blog.csdn.net/gjm15881133824/article/details/73742219