本帖最后由 aShang 于 2018-7-26 12:12 编辑
学员感言 从进入黑马学习到现在为止,已经过去了3个月整。在这段时间中的每一天都使我收获很大、受益匪浅,通过老师对知识的讲解,不但极大地加深了我对一些理论知识的理解,而且使我在理论上对Java有了全新的认识,在实践能力上也得到了提高,真正地做到了学以致用,更学到了很多做人的道理。除此以外,这次培训打实了Java基础,成为我以后学习和工作重要的基石,这对我以后人生的影响无疑是极其深远的。 在这段学习中很多人都提到了厌学,尤其是年后这一个月中,我感觉出现这种现象是正常的,因为现在学的东西不像Javase基础那样容易理解,容易让人接受,就如这段时间讲的javaweb项目,我们学习了tomcat服务器,如果我们想在服务器发布一些动态的资源,就要借助tomcat提供的接口Servlet接口,然后就有了接口的实现类GenericServlet和HttpServlet,刚开始接触到这些类的时候也是一头雾水,不知道这些类在服务器是怎样调用它们的方法的,它们的关系又是如何,尤其我当时不理解的是HttpServlet该类是GerneircServvlet的子类,它也是抽象类,那么它的抽象方法是什么呢?因为在使用该类的时候总是重写doGet()和doPost()等方法,那么我就猜想难道这些方法是抽象方法,但是问题又来了,如果如我的猜想,那么有时候只重写一个方法(如:doGet()),为什么服务器可以实例化它,并且可以调用doGet()方法?以上的所有的疑问让我感到厌学,感觉到焦躁,但是很快我就平复了这种心情,认真的研究这些问题,首先我想到了在Tomcat容器web.xml配置文件中提供了类的全名,这就让我不自主的想到了反射的技术,服务器是通过反射的技术完成GenericServlet和HttpServlet的实例化对象,第一个问题解决。然后通过查看javaee的API我了解到HttpServlet在继承GenericServlet类的同时实现了抽象方法service(),然后在service方法中调用了自己扩展的特有方法doGet()和doPost()等方法,HttpServlet虽然是抽象类,只是该类被abstract修饰,但是它确没有抽象方法,这样就不难理解为什么只重写一个方法就行,我认为HttpServlet这样做的目的是为了让继承的它的子类都有相同的行为规范,说白了就是在定义规则,所以第二个问题也解决了。所以说学Java千万不要浮躁。有的时候总是喜欢讨论什么语言最好,什么语言功能强大,Java语言可能走下坡路等等。这种讨论倒没有错,不过真正学习的时候,浮躁会使你失去很多。在学习过程中,一定要很努力地使自己保持心理的平静,从基础学起,甚至是一些看上去完全没有必要的基础。 心态然很重,但是其实最重要的还是要自己动手,陪养学习的兴趣和对未知知识的渴望,java是一种面向对象的操作语言,必须要明白这点,才能从总体上把握java。学习编程,首先要从分析别人的代码开始,明白他们的思路,认真分析,在学习的过程中一定要动手做、写代码,就如老师讲课后的代码尽量不要去抄,我们可以先分析,然后通过对代码的分析和思路自己先慢慢去写,写完后再与老师的代码去对照,查找哪些代码与老师的不一样,会出现那些问题,及时的总结和记录,这样对知识点的理解会更加的深刻,这样慢慢地才能使知识真正的属于自己。 总而言是,想学好Java,对于初学者来说,我认为首先要把控好自己的心态,不可浮躁,然后必须自己动手去写程序,多练,多写,多用,多想,去思考Java的整体设计结构。基础知识的学习不能不求甚解,要追本溯源,弄清问题的本质。这样才能举一反三,由点及面。还有要做到课前预习、课后复习,要时时保持一个清醒的头脑,多和同学沟通,互相学习,取长补短。如果这样可以坚持下来,我们将会在Java的学习道路上更进一步。
|