lynjay 2020-06-06
长达16周的面向对象程序设计A课程也是终于圆满结课了,从最开始的对象和类,到继承、多态、抽象类、接口、异常处理、文本I/O、以及JavaFX。这16周我们也是一步步的从初步认识Java过渡到了熟悉使用Java,本次博客就分享一下本学期学习Java过程中的感想。
还未开始接触Java时,我就对这门陌生的高级语言保持着无限的好奇,我曾想过它或许会很晦涩难懂亦或是枯燥乏味。初次认识Java时,却没有想象中那般难,相反它给我带来了一种简单明了,层次分明的感觉。或许是因为在大一时已经学过了C语言,有了一定的基础,所以学起Java有一种信手拈来的感觉。熟练使用Java时,它给我的感觉就是非常实用,相比与C语言来说,我倒是觉得Java比其更加强大,对编写程序的上手难度也要更加小。学完了整个课程之后,就感觉自己收获满满,多学会了这样一种有趣且实用的语言,我相信这对于我以后的学习或是工作都会起到巨大的作用。
最开始学习Java时老师给我们讲了Java中最基本的类(class),同时讲到了类的无参构造与有参构造,学到这里无形之中我就会用它与C语言进行对比,当时的我就想,这不就是C语言中的函数吗?创建函数就对应了Java中的有参或无参构造类,在功能上二者也有着异曲同工之妙。C语言中函数创建后直接通过函数名字就可以直接调用,而在Java中同样如此,只不过在Java中不能够直接调用,需要用到的是new这个关键字实例化该类的一个对象然后使用,当然也可以在创建类时使用一个静态static,这样就可以直接调用了。之后的学习也一直通过Java与C语言的对比来进行类似的理解,我发现二者确实在许多地方都有类似的结构,也正因为如此,在刚开始老师在PTA上布置编程作业,我觉得非常简单,甚至于用C语言中的编程思想也能够编写这样的Java程序。第一次出现区别的地方就在老师讲到该课程最重要的地方--面向对象编程。刚开始还不是很了解什么是面向对象编程,甚至一度以为它并不重要,因此刚开始那会我一直都是用到C语言的面向过程编程思想来编写程序,而这样做也一直都没有出现问题,直到作业中开始出现创建许多类的题目时,我才无法使用到面向过程思想来进行解题,这才不得不开始重视起来Java的核心思想面向对象。也正是这一个关键的转折点,我才开始真正接触到了Java独有的魅力,我才没有一直停留在以前的C语言学习中而禁锢到了Java的学习之路。对我而言,面向过程与面向对象各有千秋,二者都给我带来了许多的便利,面向过程思想使得我编写的代码从头到尾层次分明,而面向对象的代码却重点在于各个部分分工明确,各司其职。毫无疑问,在编写一些复杂的程序代码时,面向对象思想能够大大提升写代码的效率,也能够使得代码更加安全。而对于面向过程,在解决这种复杂的问题时却很难发挥较大的作用,以为它无法将大问题分解成小问题,这样想解决方法时显得太过于复杂。而在理解了面向对象编程后就开始学习Java的核心知识继承与多态了。毫无疑问Java的继承与多态就是专门为了其核心思想面向对象编程所量身定做的,继承使得子类能够实现父类的方法,多态使得父类方法被子类以多种形式实现。这二者可以说是相互依存的,因为有继承所以才能够实现多态,这也就完美对应了Java面向对象各司其职的想法,让子类做好自己的工作,各个对象有条不紊的实现自己的功能,合成一个大的程序代码。学会了继承与多态之后在编写代码时也就有了更多的操作空间,往往一个问题能够写出许多不同的代码,代码的条理性也比以前更加清晰。学习了继承后就开始接触到了Java的异常处理,这也是Java的一大特色,在编写代码时毫无疑问会有许多的疏忽,而这些疏忽却常常会引起大问题,而Java的异常处理却可以提前预知可能出现问题的地方,从而提前进行处理,避免程序出现较大的问题。在我看来这一项功能是非常强大的,无论多么强大的代码都会有Bug之处,程序出现问题在所难免,而有了这个功能就可以避免许多的问题。最后的文本I/O就没有讲到太多,与C语言差不太多,但我相信这在所有编程语言中都是一个非常重要的内容,对文本的使用我也一直都抱有强烈的兴趣,在我看来如果能够熟练掌握该内容,对以后的学习一定会起到莫大的作用,因此在这一块我也应该更加认真的对待,争取利用课外时间多学习相关内容以此加强自身。最后一周讲到了一个以前出来都没有讲过的东西,JavaFX的使用,这个知识点让得我眼前一亮,确实是非常的有趣,能够编写代码弹出一个自己布置的窗口,学习这个仿佛自己已经接触到了非常高深的东西,也确实这个功能能够实现一些新颖的内容。学完这个内容Java基础知识也就学到了尾端,纵观整个学习历程,相对与来说Java并没有给我很难的感觉,却带给了我对编程的兴趣,虽然也曾为它费尽脑汁,但写完程序后的满足感也是满满的,Java的学习使得我对自己选择的专业也越来越感兴趣。
仿佛认识到了一位很好的朋友,Java带给我对编程的兴趣,带给了我对面向对象编程的理解,它也使得我对编程更加热爱。虽然Java课程的学习结束了,但编程永不止步,之后的学习之旅我相信有很多的机会我会使用到Java,我也相信这样一门生动有趣特色分明的高级语言将会使我受用终生。