学习感想
0.前言
我学Java已经有一个学期的时间了,虽然时间不算太长,但在这一个学期里收获颇丰。期间曾迷茫过,曾困惑过;也曾开心过,喜悦过。刚开始学习Java时,我们已经接触过C语言。对于两种不同风格的形式,需要一段时间进行转变。不知道是不是初学者的共鸣,刚开始接触Java的时候感觉应该好难学,看着老师不一会就打出一大片代码的时候彻底懵了,但在惊讶之余我又对此产生了极大的兴趣,于是便开启了我的Java学习之路。本学期题目练习主要是在PTA上进行。在学习的初期,通过一些简单的题目练习,我感觉到入门也没有想象中那么困难,不得不说实验题是对一门语言入门掌握其语法成效最快的一类题。在写题的过程中我会因为花费大量时间解出一道习题而感到一种成功的喜悦;也会因为一次写不出来或找不出错误的代码而感到沮丧。但更让我记忆深刻的是那一次次学习的过程,使我有一种很强的代入感。在学习中我们要学会
”不抛弃,不放弃“,只要能坚定的去做你会发现,你的努力或给你带来回报,虽然很多时候你努力后得到的成果并不理想。其次就是多练多打,量的积累一定会引起质的变化,请一定要相信这个道理。在学习中不仅要认真听老师讲的内容,课后还要努力的练习,以此来熟悉并掌握老师所教授的内容。这是因为不论老师讲的内容有多简单,你在课堂上听得有多懂,在你自己练习的时候你就会发现本来很简单的东西但是就是敲不出来。
1.作业过程总结
①知识迭代关系:作业从易到难,带我们逐渐适应思维的转变。逐渐从面向过程转变为面向对象程序设计。首先是java环境的搭建,然后是java类结构和main函数;后主要学习了类与类之间的关系,学习了如何使用正则表达式、类的继承并定义相应类对象并进行测试、图形继承与多态。带我们逐步理解面向对象的封装性、继承性与多态性三大技术特性;抽象类和接口以及最后学习的JavaFX基础。
②从C语言带过来的习惯慢慢转变,从第一次与C语言相同的写法到第二次了解java的语句,再到第三次作业中真正使用类的概念,题目的类型正在逐渐引导我们建立类的概念,而不是所有代码都写在一个主函数当中,通过类的设计思想,试我们的代码看上去更简洁有效,并且在今后可以单独使用和修改。通过作业逐步理解面向对象的封装性、继承性与多态性三大技术特性:把类和方法保存在整合包里体现了封装性的一个特点,就有着良好的内聚性,当我们要调用这些类时,必须先导入这些类对应的包,才可以使用这些类,极其方法,这就体现了其封装性;子类保留父类的所有变量和方法,这就是继承,而多态又是从继承而来。如果我们要重写某个父类中的方法,只需加上@override并将方法重写,体现了多态。
③遇到的问题:
1.程序容易出错,但好在错误处会有相应的提示,找出错误的地方并及时修改。
2.代码有的很复杂,有时候容易出错、不知道错误在哪。
3.在使用不同类的时候不小心把class放在了main函数中,报错时一时找不出错误。
4.正则表达式有的不能正确使用。
④每次作业花费的时间比例:一般一道题时大概要花费2-3天时间;如果是三道题或以上一般是花费1:2:3的时间。
⑤对编程过程的严谨性的认识和教训:Java编程是严谨的,且比C语言好用,一些编译和语法上的错误在平时写代码的时候往往不能够被轻易发现,但是java编译器就给出提示。除此之外懂得了使用debug,很多很难找到算法错误,使用debug去寻找会容易得多。
2.OO设计心得
①对面向对象三大技术特性之间关系的理解:
封装是面向对象的特征之一,是对象和类概念的主要特性,把类和方法保存在整合包里体现了封装性的一个特点,就有着良好的内聚性,当我们要调用这些类时,必须先导入这些类对应的包,才可以使用这些类;继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法,子类保留父类的所有变量和方法,这就是继承;而多态又是从继承而来,是指允许不同类的对象对同一消息作出响应,多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。
②面向对象设计的基本原则理解:首先,应该优先选用能够最完善、最准确地表达问题域语义的面向对象语言。类的实现是核心问题,所有的数据都被封装在类的实例中,所以类是关键。实现一个系统是一个比用过程性方法更简单、更简短的过程。
③OO编程思维的理解
OO编程主要是将设计尽量与现实世界的事物一致化。类和对象是其中最基本的两个概念。在设计时,先找到要处理的各个对象,再找到各个对象共同点祖先,逐层抽象,最后确立各个类之间的继承关系。
④类设计心得
每一个类尽量做到独立功能,体现单一职责,能使得系统具有较好的可复用性。
3.测试的理解与实践
①测试对于编码质量的重要性
测试是判断编码质量的一个重要手段,通过测试,可以初步确认代码实现功能的正确与否,并且还能提示出错的地方,让我们加以修改,提高了代码的质量。
②假如让你设计测试用例,你会如何做
分别设计异常和正常输入的测试点,再在正常的范围内设计不同类型的测试点。
4.课程收获
在学习Java的过程中我总结出以下结论:
1.学习中,要养成良好的习惯(写括号时要成对,字母大小写要区分,单词拼写要准确)。
2.在学习的过程中,最好不是仅仅停留在java表层,不是抄书上的例子运行出结果就可以。要注意,即便对一个简单的例子也要有耐心去琢磨、调试、改动。
3.在学习的过程中一定要动手做、试着写代码,而不是抱一本书看看就行。很多东西和体会必须自己动手才能真正属于自己。
在学习过程中,可能会遇到形形色色的问题不容易解决,应多去专业论坛了解相关的知识,书本上的知识有限。要会从网上搜索有用的信息 加以整理,促进学习的深入和知识水平的提高。