Java课程学习感想
Java课程学习感想
从大一数下来的话,应该是我学习的第三个有关编程的语言了,之前是C语言与数据结构,其实当时写数据结构话,也可以说是用的C语言写的,但是现在我们接触了一种新的语言程序,也就是Java,它与C语言和数据结构比起来,就个我感觉吧,还是不算太难的(可能是相对来说过自己上课比学C语言与数据结构更认真吧(?ω?))。不知不觉中,学习Java也过了3个月多了,然后本学期的Java课程也接近尾声,在这里我发表一下学习本课程的感想。
其实在开始学习Java时,有向自己方向的学长学姐们询问过学起来是否困难,他们都说不难,还说可能是这个学习最简单的课程;当时不信,可是学到现在我信了。先谈谈线上Java课学了些什么吧:
首先就是配置JavaJDK环境,这样写工程时保证能够运行且不会出错,当然这些都是必要的,所以这些东西略过,没有必要讲的这么详细;
之前学的C语言也好,数据结构也好,都是面向过程的编程,就是说如何使用函数去实现既定的功能,就好比nchu-software-java-homework01作业一样,这次作业可以说是面向过程的;而Java是面向对象的编程,即关注如何把相关的功能,包括函数和数据有组织的捆绑到一个对象身上。第一节课就讲了类与对象的关系,根据Java独有的特点“类--对象”出发,将类与对象的属性、方法都包含进去,就这样慢慢从面向过程过渡到面向对象,我想这也是让我先学C语言等课程再学习Java课程这样的课程学习安排的初衷吧。
之后学习了Java的三大技术特性:封装、继承与多态,我在学习过程中能感受到面向过程到面向对象的深入。封装是将对象的数据和方法结合,由方法将对象的数据实现,并实现对象的数据隐藏。继承可以说是Java面向对象编程技术的一块基石,因为它允许创建分等级层次的类,然后继承就是子类继承父类的特征和行为(方法),继承当中也有许多知识点:比如调用父类构造方法啊等等,实现代码的重用,也就是通常说的复用性。多态是同一个行为具有多种不同的表现形式或形态的能力,也就是同一个接口,使用不同的操作。比如之前的作业nchu-software-java-homework05,写的代码就是继承与多态的,当然这只是一部分,圆类继承Shape类,然后圆类继承Shape类的变量与方法。
class Circle extends Shape{ //圆类 private double radius; Circle(){ } Circle(double radius){ this.radius= radius; } public double getRadius() { return radius; } public void setRadius(double radius) { this.radius=radius; } public boolean validate() { if(radius>0) return true; else return false; } public double getArea() { return Math.pow(radius, 2)*Math.PI; } }
接下来是抽象类与接口的学习,抽象类Abstract,接口implements,抽象类呢不可用于创建对象,抽象类可以包含抽象方法,但是这些方法在子类中实现;接口的话不再像类一样用关键字extends去“继承”,而是用implements去“实现”,也就是说类和接口的关系是实现。
最后讲了Java界面JavaFX基础,这个我认为是比较好玩的,老师线上上课演示各种花样、图案,然后可以制作自己想要的菜单界面,或者画图(平面或者3D)都可以,下面是我上课用代码实现的一幅图,像一朵花(感觉又不像),就比较抽象吧。
当然Java课不仅仅讲了这么点,还有很多,比如正则表达式等等一些东西,然后我上面只讲了一些大的方面,比较细化的就没一个一个字的详细说明了,因为Java的东西根本说不完。
在整个Java学习过程中,也领悟到了一些OO编程思维的理解:1、抽象:类与对象就是OO编程中最重要最基本的两个元素,在设计的时候,要先找到需要处理的各个对象,会慢慢变得抽象,将这些抽象对象找出来后,忽视那些没用的细节,这样解题会变得明朗很多。2、Java三大技术特性封装、继承与多态,然而OO编程的三个特征也是它们三个,熟悉掌握OO编程的特征对于解题有着非常大的帮助。可能我理解的不透彻或者可能挨不到边,这也是我自己的理解。
平心而论,我自己学得可能不是太好,在本课程学习上应该没问题,而是写作业时的思想问题,我对逻辑性强的一些题目可能会拗不过弯,想来想去也不是个头,在这方面还是需要下功夫。
通过这三个阶段的学习,学到的东西非常之多,同时也吃了很多教训,比如看题不仔细,写代码时马马虎虎,就犯一些小毛病,比如:“;”,“Main”,“内部输出”,这些,总是忘记写或者是写成“Mian”,有时候自己都想笑,有时候这种内部输出会让自己找不到错,就好比上次作业nchu-software-java-homework08,我的输出就是内部输出,然后PTA提交的时候显示格式错误,然后卡了很久才找到错误。然后上面也说到了,我对OO编程的思想不完全理解,即便如此,还是学到了很多。在学习Java过程中我得出以下结论:
1、学习中,要养成良好的编程习惯,写括号时要成对,字母大小要区分好,单词拼写要正确;
2、最好不是仅仅停留在java表层,不是抄书上的例子运行出结果或者满足于老师上课讲的东西就可以。要注意,即便对一个简单的例子也要有耐心去琢磨、调试、改动。
3、在学习的过程中一定要动手做、试着写代码,而不是抱一本书看看就行。很多东西和体会必须自己动手才能真正属于自己。
4、在 Java 的学习过程中,可能会遇到形形色色的问题且不容易解决,书本上的知识有限。应该学会从网上搜索有用的信息加以整理,促进学习的深入和知识水平的提高。
最后,学好Java对以后找工作或者工作中都有很大的帮助,我希望我之后坚持学习Java,之前落下的一下知识点啊,也会好好补上;非常感谢蔡老师在这段时间对我Java学习的监督,同时也感谢在我遇到问题是帮我解决问题的同学,对我学习Java与巩固知识点有很大的帮助,让我在学习Java过程中走的弯路少了很多。
相关推荐
机器学习是实现人工智能的手段,其主要研究内容是如何利用数据或经验进行学习,改善具体算法的性能。多领域交叉,涉及概率论、统计学、算法复杂度等多门学科。依赖NumPy、SciPy、matplotlib库?