面向对象程序设计之感悟
Posted 88-66-99
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向对象程序设计之感悟相关的知识,希望对你有一定的参考价值。
1. 前言
学习了一学期的Java课程,觉得是该总结自己的心得体会了。开始学习任何一门课(包括java),兴趣最重要。一直觉得自己在学计算机编程语言,学习了很多,但每门语言都停留在知识边缘地带,都没深入到它们的精华部分,对它们的精华部分知之甚少,于是趁学校开设这门课,并且有自己的老师讲解,还有了上机的机会,比自己自学省事多了,于是鼓足信心,开始了漫长的java征途。
2. 学习过程
由于一场疫情的爆发,全国的学生都在家里网上上课,我记得是第三周,我们开始面向对象Java的学习;我们在学习之前,首先我们要配置好JDK的环境,配置了好久,终于弄好了。还记得我编写的第一个经典程序“hello Word”。从那时起我已开始走进Java的世界。当时自己不是很理解为什么main方法一定要这样来定义public static void main(String[] args),能不能不这样写?问了好多同学,他们告诉我的答案是一样的“java本身要求就是这样子的”,但我自己不甘心,就进行了下面的好多操作:把main改个名字运行一下,看看报什么错误,然后根据出错信息进行分析;把main的public取掉,在试试看,报什么错误;static去掉还能不能运行;不知道main方法是否一定要传一个String[]数组的,把String[]改掉,改成int[],或者String试试看;不知道是否必须写args参数名称的,也可以把args改成别的名字,看看运行结果如何。 结果把Hello World程序反复改了七八次,不断运行,分析运行结果,最后就彻底明白为什么了main方法是这样定义的了。接着在以后的学习中我也采用这样的方法解决问题,却发现自己的速度比别人慢了好多,我就把自己的课余时间也分一部分给了java。
从第一次写博客、再到运用Junit进行测试、然后是深入学习学习面向对象的三大特性“封装”“继承”“多态”、再到最后阶段的安装javafx开发环境用以设置简单的界面,以及总结性的实验课,虽然一开始觉得这门专业课挺难学的,但是跟着老师一步一步的走下去,体验还是不错的,学到的东西还挺多;虽然老师讲的例题不全都搞懂,很多基础知识还需要上网百度,但我知道学习过程漫长而曲折,到底还是要花功夫的。在学习Java的面向对象的编程语言的特性。比如继承,构造器,抽象类,接口,方法的多态,重载,覆盖,Java的异常处理机制。对于一个没有面向对象语言背景的人来说,我觉得这个过程需要花很长很长时间,因为学习Java之前没有C++的经验,只有C语言的经验,花了很长时间,才彻底把这些概念都搞清楚,把书上面的例子反复的揣摩,修改,尝试,把那几章内容反复的看过来,看过去,看了很多遍,才慢慢搞懂。
3. 关于作业
我们作业包括课堂作业(学习通发布),中国慕课上的学习视频和作业,最难搞的便是pta上老师发布的大作业,每次发布大大作业,少则三四天,多则就不好说了······
慕课,对我来讲慕课上的作业难度最小,像第一次在面向对象这门课里面接触用随机函数产生随机点抓牌,没有测试点随便你用什么手段只需要得出编程结果即可,不需要花太多时 间;随堂练习,每次的课堂练习我觉得是对老师在课堂上讲解的知识的充分运用,像一开始的数据结构中节点链表各种功能的设计、雨刷类功能的改进,农夫过河问题;通过雨刷类的设计我知道了抽象中介类的运用,当你的实际用户需求多样多变时,为了保证代码的复用性以及避免大量的改动以前的设计,可以设计一个中介类以便向外扩展所需的各种功能。
Java大作业中类图和类与类之间的关系的越来越复杂,设计思路和方法特别难想,测试点变得越来越难通过,百度的东西越来越多导致每次写的都疲惫不堪,就比如第一次大作业--正则表达式解决水文校验的问题,我搞了好久都是答案错误,最后只得放弃;老师一直强调Java里面的各种设计原则,像“开闭原则”、“单一职责原则”、“替换原则”、“依赖原则”和“接口分离原则”。
就在昨天,我把最后一次Java大作业搞定了,感觉特别痛快,一方面是觉得有些小骄傲,另一方面是完成了老师最后给我们的任务,松了口气;此外,我对于static,public,private,Exception,try{ },catch { },finally{ }等等一开始都不是很懂,都是把书上面的例子运行成功,然后就开始破坏它,不断的根据自己心里面的疑问来重新改写程序,看看能不能运行,运行出来是个什么样子,是否可以得到预期的结果。这样虽然比较费时间,不过一个例子程序这样反复破坏几次之后。我就对这个相关的知识彻底学通了。有时候甚至故意写一些错误的代码来运行,看看能否得到预期的运行错误。这样对于编程的掌握是及其深刻的。
4. 最后总结
在学习Java的过程中我得出这样的结论:
①. 学习中,要养成良好的习惯(写括号时要成对,字母大小写要区分,单词拼写要准确)。
②.在学习的过程中,最好不是仅仅停留在java表层,不是抄书上的例子运行出结果就可以。要注意,即便对一个简单的例子也要有耐心去琢磨、调试、改动。
③.在学习的过程中一定要动手做、试着写代码,而不是抱一本书看看就行。很多东西和体会必须自己动手才能真正属于自己。
④..在 Java 的学习过程中,可能会遇到形形色色的问题不容易解决,应多去专业论坛了解相关的知识,书本上的知识有限。要会从网上搜索有用的信息 加以整理,促进学习的深入和知识水平的提高。
“有一天,你终于知道,你该去做什么,于是你开始去做”,这是《太极跑》中的一段话。在学习java语言的同时,也让我学会了如何来发现问题,如何解决问题,怎样有效的学习等等,相信会对我一生都有帮助。学习java和学习其他知识一样,都会遇到困难与瓶颈期,关键在于不放弃。学习的动力在于,你为什么学,是跟风?还是自己心里真的喜欢?如果轻言放弃,那么就根本不是喜欢。真正从心里认可的事情,是无论如何都会想办法去做的。
以上是关于面向对象程序设计之感悟的主要内容,如果未能解决你的问题,请参考以下文章