java学期总结_Java学习本学期总结

前言

本篇文章主要是对本学期Java学习和第三阶段PTA作业的总结,以及对面向对象编程思维的理解与面向对象设计心得。若其中有错误或不足的地方,欢迎大家指出。

一、作业过程总结

首先本学期第一阶段作业,主要是学会运用JAVA的一些基础编程语句、基础的数学运算和数组。并学会Java类中方法的创建和调用,在一个类中创建多个方法,通过方法之间的调用解决问题。进而学习创建不同的类,通过创建对象,直接或间接调用对象中的属性和方法来解决问题。然后是第二阶段作业,用到了正则表达式、StringBuilder和LocalDateTime等类,并用到了继承、多态以及接口的知识。另外还运用了ArrayList、Collections类、comparable接口等知识。最后是第三阶段的作业,进一步学习了类的继承和抽象类的知识,此外还用到了栈的知识,设计了一个简单计算器。本学期三个阶段作业的知识运用是由简单到复杂,程序的难度也是有简单到复杂。除去作业中用到的知识之外,还学了文件读写、界面设计以及动画的一些简单知识,更加丰富了我对Java的了解。

第一阶段的作业包含了一些面向对象设计的内容,并触及到一些面向对象设计思想,使我对面向对象思想有一个大概的了解。第二阶段的作业每道题都有封装性,并强调有较好的可重复使用性以及单一职责,并学习理解了面向对象的继承性、多态性以及接口。使我对面向对象思维的理解更加清晰。第三阶段的作业没有了UML类图,需要自己设计,作业难度更大,也考验了我对面向对象设计的理解程度,加深了对OO设计思维的理解。这三个阶段的作业逐渐引入面向对象思想,从一个简单引入,到面向对象设计的理解和运用。

我在编程时出现过许多问题,大多数都是一些细节问题和知识不足的问题。首先,当遇到知识不足问题时,就需要去查各种资料,找到可以更好解决问题的方法,例如:在第三阶段的作业中,表达式的求值问题,我对栈的知识不是很了解,就需要查一些这方面的资料。虽然每次在查资料时,会花费一些时间,但这增加了我的知识储备,学到了很多有用的东西和方便快捷的方法。还有就是很对细节上的问题,这些问题在首次编程时可能会意识不到,只有当运行测试时才会被发现了,从而得到解决。

第三阶段作业每次只有一道题,但其中的问题有些并不难,我花费的时间比例大概为1:4:2。

经过这一个学期的学习,我对用Java编程有了一些经验,其中对编程过程的严谨性也有了不少的认识和教训。首先,要保证编程语法准确严谨,不要有语法错误,虽然语法错误很少出现,但一旦出现就可能导致输出结果错误。其次要编程算法严谨,要算法严谨就要有清晰的逻辑,要包含会发生的所有不同情况,注意小细节。否则有一个点不能通过测试,就会花费时间去检查,增加作业时间。如果你的编程的逻辑不是很清晰,也可以试着去写,一点点得修改完善,但这会费很多时间的。编程越严谨,程序的质量自然也会越高,会节省很多人力物力。

二、OO设计心得

对面向对象设计基本原则的理解。单一职责原则,说到单一职责原则,很多人都会不屑一顾,因为它太简单了。但是即便是经验丰富的程序员写出的程序,也会有违背这一原则的代码存在。因为有职责扩散,所谓职责扩散,就是因为某种原因,一个职责被分化为粒度更细的职责一和职责二。单一职责可以降低类的复杂度,一个类只负责一项职责,其逻辑肯定要比负责多项职责简单的多;提高类的可读性。“开-闭”原则,这个原则有两个特性,一个是“对于扩展是开放的”,另一个是“对于更改是封闭的”。面对需求,对程序的改动是通过增加新代码进行的,而不是更改现有的代码。里氏代换原则,子类可以扩展父类的功能,但不能改变父类原有的功能。组合/聚合复用原则,就是说要尽量的使用合成和聚合,而不是继承关系达到复用的目的。

OO编程思维的理解。OO编程思维即将设计尽量与现实世界的事物相一致,尽量使程序设计的思路符合现实世界的规律。现实世界事物有什么功能,程序设计就有什么方法,现实世界事物有什么属性,程序设计也就有什么属性。

类设计心得。首先,类的设计要符合上面说的几个基本原则,要有好的封装性,还要有好的逻辑严谨性,这样可以提高代码的质量,减少bug的产生。可以说这是Java程序设计的一个良好开端。

三、测试的理解与实践

测试可以找到程序中存在的错误,进而解决问题,减少bug的产生,提高代码的质量,使程序更加符合客户需求,节省人力物力。

测试可以通过写一个测试类,将要检测的类中的方法,写到测试类中单独检测,这样可以测试出这个方法或方法中的一段代码是否可以得出正确结果,但这样写效率较低,较费的时间。还可以通过Junit测试,Junit是一套框架,继承TestCase类,就可以用Junit进行自动测试了。使用Junit的好处就是这个结果是否正确的判断是它来完成的,我们只需要看看它告诉我们结果是否正确就可以了,在一般情况下会大大提高效率。

四、课程收获

通过这一个学期的学习,Java的学习也要告一段落了,我对Java程序语言设计有了一定的了解,从一个对Java毫不了解,对面向对象设计不理解的小白,到了一个可以用Java编写一些简单代码的程度,学会了运用各种Java类和方法,并对OO设计思维有了一定的了解。我以后还会不断的学习,更加深入了解面向对象设计,进而可以写出一些复杂的程序。

五、对课程的建议

我的建议是,老师可以在PTA作业结束后,在课上讲一下这次PTA上的作业,这样学生可以找到自己的错误或是不足之处,并进行改正,有利于Java的学习。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值