我的第一篇博客——初学Java

  大二下学期,我学习了一门新语言——Java,在学习Java之前,我只知道它是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,当时就感觉挺厉害的。我记得在上第一节课时,老师就提到了Java具有简单性、面向对象、分布式、健壮式、安全性、平台独立与可移植性、多线程、动态性等特点;讲了好多,我却不知其所以然。当时我认为应该和C语言差不多吧,但一门语言必有其核心,而面向对象就是Java语言的核心,是程序设计的思想。  

  我们Java作业是通过pta平台发布的,第一次题目有计算税率、判断坐标点所在范围、电话键盘字母数字转换 、判断三角形类型 、统计最大数出现次数 ;我看到这些题目时,我感觉这些题目和面向过程差不多嘛,从输入、输出然后得出结果,虽然第一题代码就有八十多行,但是题目是很简单的,所以Java第一次作业很顺利地完成了。

  第二次作业便和前面的有些不同,它涉及到类和方法。求一元二次方程,要求Main类中必须有若干个方法; 判断闰年及星期几、求前N天等都是一个Main类包含一些方法,这里的方法可以理解为我们之前学过的函数;Java是一门语言,自然会有它自己的语法,没遵循语法变会报错,初学Java,肯定懂得的Java语法很少,这都得靠我们平时上课学习和作业养成的习惯;随之而来的就是第三次作业,这次真的有点难道我了,日期类设计、聚合类问题等等,根据UML类图设计···这次我有些不知所措了,所以只能问那些参加了ACM战队的同学,应该怎样做才能符合用户需求,不愧是经过特殊训练的,我看他们的代码做得好精炼,看看自己的代码都是些啥呀

  从面相过程再到对类的设计,让我初步体会到了面相对象的一些思想。在这三次作业中我也遇到了一些问题,我第一次作业就发写了pta和eclipse的一些问题。第一、不要包含package关键字;第二、代码中必须存在一个public class Main;不允许出现其他的public class;第三、程序开头必须import java.util,Scanner导入Scanner类;int num=Integer.parseInt(str);用于字符串和整形互相转换···还有很多很多Java的一些规则就不说了,这得以后慢慢学,慢慢习惯,因为我知道学习是一个过程,不可能一蹴而就。

  这三次作业我花的时间比例应该是1:2:6;我觉得第三次真的对我来说有点难,第二题我就花了两个晚上的时间,后面两题也花了不少时间;从第三次老师给了我们十四天的时间也可以看出这次作业的难度不小,因为马上就会发布第一次大作业了,也许老师是想给我们加大学习强度,好让我们早点适应大作业的学习难度吧。我意识到我现在的水平大作业应该会有很大的难度的,记得一个同学和我说要多查API,它是Java编程的基本方法,也是编程过程中所不断利用的资源。Java的学习过程不仅仅是基本语法的学习,更多的是去学习和掌握它所提供的API类库。对于所接触到的类,方法,都去仔细去阅读文档的说明,再用自己编写的实例去调试一下。而且不要只看而不练,学好java靠的还是实践java的所有编程思路都是“面向对象”的编程,所以大家在往更高境界发展以前一定要打好基础,基础是王道。我们的基础要扎实,所谓打好基础并不是说要熟悉所有的java代码。像class,methode,object,各种套用import,extend 让自己在结构上对java有个立体而且整体的了解。

  老师也建议我们在上课之前一定要去中国MOOC上看关于Java的学习视频,毕竟老师两节课教给我的知识是很有限的,我应多去专业论坛了解相关的知识,从网上搜索有用的信息 加以整理,促进学习的深入和知识水平的提高。我们之前学过的面向过程是分析解决问题所需要的步骤,通过分别去实现对应的函数来完成每一个步骤;而我们现在学习的面向对象是抽象的,分为类,方法。虽然我现在对面向对象的理解还是有限,但还是能体会到面向对象与面向过程的区别;面向过程的缺点是难以维护,复用,扩展;而面向对象做到了易维护、复用、扩展,系统使用灵活方便等功能。

      老师讲课时都是在eclipse里和我们讲,丢开了书本上的死知识,我觉得这样很好,我也会在今后的学习里,上课前先把MOOC上的视频看完,然后结合老师上课讲的去实践,独立完成pta上的作业,遇到难题先自己思考,遇到了能力之外的难题再去问老师同学,为大作业的到来打好基础。

      路漫漫其修远兮,我相信跟上老师的步伐,可以把Java学好!!

     

 

 

 

 

原文地址:https://www.cnblogs.com/88-66-99/p/12628895.html