学习java心得体会(推荐八篇)。
当我们对人生或者事物有了新的思考时,可以将其记录在心得体会中,这样能够培养人思考的习惯。相信许多人会觉得心得体会很难写吧,以下是小编整理的java学习心得,欢迎阅读,希望大家能够喜欢。
学习java心得体会 篇1
对于很多只会C语言的初学者而言,面对java基础语法学习,反而感觉很难,其实其中最大的问题不是语法难,而是一种编程思想的转变。面向过程就是把你的代码封装成函数,然后依次去做一件事情,面向过程是把你要做的事情抽象成对象,告诉对象去做。所以要想学好java入门,必须知道类和对象的概念。
类是对生活中事物的抽象描述,比如人类,动物类,交通工具类;对象即是对类的具体实例化,比如张三是人,猫是动物,飞机是交通工具(对象-----类)。Java基础入门学习路线可以总结为四步走:
1.java开发环境的搭建;
2.java初级之基础语法学习(80%类似C语言);
3.java中级之面向对象编程学习(重点);
4.java中级之应用编程学习。
第一步:JDK软件开发包时java软件开发环境,
包括jre运行环境和jvm虚拟机,在oricle官网下载javaSE版本JDK包;配置好环境变量就可以使用了。
第二步:java初级语法学习,
1.基本数据类型整形,字符型,字节型,长整形,短整形,浮点型,双精度,布尔型;
2.运算符+,-,_/,%等;
3.控制流(while,switch,if else);
4.数组的定义方式。
此阶段基本无难度,只要了解练习例题。
第三步:java面向对象学习,
1.类和对象;
2.java语言三大特性,封装、继承、多态;
3.一些关键字学习(static,final,abstract,extends)等。
这是重点,大家根据知识点一步步研究学习才是关键。
第四步:java应用编程,
例如:文件IO,集合(类似C语言数据结构),异常处理,线程,网络,JDBC数据库操作等,都是掌握面向对象以后,在查找不同的类使用类中不同的`方法达到应用的效果,所以并不会很难。等基础语法掌握了就可以继续后面框架学习(java web方向,android学习),相信明确思路你会豁然开朗,更有学习动力。
学习java心得体会 篇2
容我先说句废话,经过同学们多次的互相理论与向上建议,对于第二次次实习地点安排在学校这个结果我还是非常高兴的,毕竟少了很多旅途劳累。
这次实习内容是java web,我想应该与本学期开过javaweb这门课有关,毕竟上学期学过java和数据库,本觉得应该会比较轻松,开始之前大家都说这实习可是可以放松了,可是等老师开始讲之后发现这个东西理论上知识点不多,可是应用起来还是感到非常困难。这次实习老师风格与上次实习的那位不同,去年那简直是从零开始讲,这次上来没细讲java和SQL,直接jsp。于是上学期开过的、纸上谈兵的java课就露出破绽了,简直要从头学起,更别说与jsp、sql融合了。另外用jsp写网页嘛,这个语言不是很火,去Github上找,开发web应用的大多是php、python,而servlet这个东西非常基础,甚至并不能算作一个开发框架,所以网上的资料也并不好找,网上都是些Struts2、Spring3、Hibernate,总之这开始的时候就很是艰难,晚上回到宿舍也经常要花很多时间来补之前的知识,java封装继承什么的,当然,这很累。
白天听课并不能高效的吸收老师所讲的,下来问了一下同学们是差不多的情况,可能是老师的节奏我们不太习惯。不过这学完也终究是会了一些,大概说一下,JSP全名Java Server Pages,一种动态网页技术,所谓动态就是可以与用户交互就像论坛什么的,而html静态页面就是只能给用户看的。首先,我们配置了几个环境:java的JDK和服务器Tomcat。至于IDE,我还是用我比较顺手的jetbrain家的IntelliJ IDEA,对了,不用Eclipse是因为它丑。
之前都是写静态页面,对于动态页面的环境配置还真是头疼了一段时间,看了一些博客,发现这个主要是在File——Project Structure配置依赖的jar包,还有就是tomcat服务器的配置。配置好了开始学JSP内部对象及内部对象所对应的一些方法。再就是JSP与数据库的联系,怎么样操作Mysql数据库等等。
在用一种语言写程序的时候,demo通常是零星几个功能的尝试,而去写一个偏实战的项目时,是需要从需求分析、模块设计到实现功能的一整套流程,这些我们从来没有做过,当我们C05开源盛世(项目组)开始做项目的时候,第一步的需求分析就费了好多功夫,功能点想的不全面,导致中途还要进行改动。模块设计也是类似的情况,低内聚高耦合这种理念可是不好理解。此处多谢伙伴们抬举,我这个组长也是个没当过组长的新手,可能是命题选的比较偏(做的东西类似知乎),在开始时就遇到了一些棘手的问题。
做这个项目对团队的协作能力要求很高,在这里,我作为组长出了这么几个大的纰漏:程序框架搭的不够细致、项目约定不够全面、没有及时收集组员的进度反馈、同步项目文件的频率太低,实现顺序不当导致功率浪费。这些导致我们5个人开始不久就发生了如下问题:类名冲突、同一个模块写了两遍、制作前台的进度没有与后台进度同步,导致了不能及时测试与调试程序。
最后,这个项目让我看到了很多,尤其是分工和成员之间的同步方面,发挥出团队合作的力量对于我还是个巨大的挑战,以及再一次强调了实践的重要性,从中也看出了我们相比于那些真正开发团队的的青涩与弱小。历练方能不死,活着真难!
学习java心得体会 篇3
短短的一个月很快就过去了,在这短短的一个月里,我学到了很多,了解了很多。在这一个月里我学到了有关JAVA等方面的知识,了解了关于软件开发的流程。了解了自己的不足,知道了自己努力的方向。
回顾这次的实训,这次或许是最后的实训机会。我是一名大二的学生,明年或许就要出去实习了,所以我很珍惜这次的实训机会,因为它能够让我了解自己的不足以及以后自己努力的方向,同时也能让我了解软件开发的流程,增加一点软件开发经验和社会经验。让我在以后的实习中会更好的融入到其中,增加自己的就业机会,因为纵观现在的就业形势很不让人乐观,由于之前的经济危机,就业机会越来越少,就业也越来越难,这就给了我们很大的压力,所以要是没有真本事,就业岗位就无从谈起,因此,在以后的学习中,我会更加好好努力。
通过这次的实训,我学到了很多:
首先,对JAVA识比以前有了更深的了解。在这之前由于种种原因我JAVA学的很不好,编程我几乎写不出来。但经过这次的实训,我对JAVA的理解,虽然还有很多都不懂,但我会在今后的实训和学习中加以学习了解,力求弄懂,增强自己对JAVA的理解。
其次,在这次的实训中我的动手操作能力有了一点的提高,刚开始的时候JDK的配置,数据库的安装都出现了一定的问题,JAVA可实话开发工具的不熟悉,所以开始的时候进程很慢,时间都用在了JDK的配置,数据库的安装以及熟悉JAVA可视化开发工具上,但付出有了回报,成功的配置了JDK,安装了数据库,熟悉了JAVA可视化开发工具,总的说来,自己还是有一定的收获的。因为自己的动手操纵能力得到了提高。
最后是团队协作。在整个项目完成过程中团队协作有着不可替代的作用。从在刚拿到项目时对项目的分析到最后的项目完结的都有一定的体现。刚拿到项目时,我们团队进行了分析,并分配了各自的任务。当我们其中一人遇到问题的时候,我们其他人都会去帮忙,效率提升了很多。但可能由于不是一个宿舍的,大家彼此间都不是很了解,所以交流中还是存在了一定的问题。
在这次的实训当中我收获颇丰。但仅仅靠这一个月的学习还是远远不够的。所以在以后的学习中我会更加努力,提高自己的能力,让自己在以后的社会道路上打下坚实的基础。
学习java心得体会 篇4
作为一名软件工程的学生,学习java是我学习的重中之重,在长达一年的学习过程中,我也对java也有新的认识。
我在漫长的学习java的岁月中,遇到了许多大大小小的困难。首先,在学习java开始中,老师往往会布置很多代码题进行实操或者书写在作业本上。在刚刚开始的几次作业中,我往往因为自己的浮躁与不耐烦,直接向同学要他们的代码把作业上交,但渐渐的发现,课堂跟不上,成绩不佳,我陷入了迷惘中……后来,意识到自己学习java的态度与方式是不对的,经过调整,也有了自己的一份学习java的心得体会。
java的学习需要理解代码的思路。在写代码与学习java知识点时,往往对于每句代码都应该理解透彻,在以后的代码书写中,自己才能写出正确的代码,甚至于找出自己的代码错误。这对于代码的理解透彻,就需要自己在上课时,好好理解老师的代码思维,自己也需要多看看关于代码的书,加深理解。
java的学习需要多做,多思考。在java学习中,不仅要学会打课内的代码,也需要通过百度找寻课外的代码,举一反三,自己解决很多的问题。
在这一年的学习中,我对于java有了初步的认识与了解,我知道自己真正掌握java还需要一段时间的学习,但我相信我自己只要有颗想学习好java的心,对于以后的困难是不惧怕的,我相信在学习java中,自己是在此过程中不断成长的,进步的。
学习java心得体会 篇5
暑期在和一个老师做项目,前期老师教学,做java web方面的,类似于当当购物系统这种...突然发现,原来之前看的《think in java》等书并不够,很多面向开发的技术和模块包括工具从知识到技术上都很欠缺。
现在有几个疑惑,想在小组向各位求助,希望帮忙。
1.首先我想知道是不是做java一般都是web挂钩,例如现在的jsp,ssh和html语句和应用都很好的结合,除了web方面,软件项目方面有没有一个比较明确的方向,如果有,可以告之小弟么~
2.我听说做web方面,应该先学jsp,html,再学mvc,不然很容易本末倒置,那ssh这样的技术学习,有没有一个比较明确的先后顺序。
3.java ee这样的一个学习过程,能不能有一个比较好学习心得可以推荐。我有一定的java基础,可以编写一些java小程序,但是到了web这些方面,思维总是不够清晰,很容易混乱,对象方法和类之间总是不能很好的去扩展。希望各位帮帮忙,介绍一些学习心得,包括学习java技术的顺序,并推荐一些书吧。
学习java心得体会 篇6
Javaweb课程结束了,在完成了eclipse三份实验报告之后我开始总结这门课程自己究竟学到了什么。
从C语言到Java,再到jsp,最后到javaweb,一直都在与编程都打交道,学好它一是专业的需要,二是自己觉得它今后对自己会有很大的用途。C语言是一个面向过程的语言,而Java是一个面向对象的语言。在C语言里,行为称为函数;在Java里,行为称为方法。在C语言里,只有变量和函数;在Java里,一切逻辑由类封装,即“万物皆对象”。C语言的struct和Java的类相似,但struct里只能有属性,而类里可以有属性和方法。所以,C语言的分工不清晰,主控程序几乎承担了全部的职责;而Java可以把方法放在类里,对象的职能很多,可以单独完成某个类的全部方法。
首先我想回顾一下javaweb这本书上的主要内容:
第一章是对Web应用程序的概述。从中我了解到Web应用程序的三层体系结构:表示层、业务层、数据存取层。它们同是叙述在编写代码时应做的规划和应遵循的规则,这种规划在以后的学习中时有出现,说明编程并不是一味地进行循环判断、死记硬背,而需要在技术上有所加强、在效率上有所提高。接下来学的是JSP知识。要学JSP,就必须会HTML,如果HTML学不通,这对以后的学习都是一个瓶颈。这点我有所体会。因为我对HTML掌握得比较好,在这方面没有遇到什么困难。但如果没掌握好这些知识,加上要学新知识,就会在旧难题的基础上增加新难题,两头招架,实有些吃不消。所以,基础是很重要的,基础一定要打扎实,吃透,否则上层建筑的建起就不会很顺利甚至没法起步。然后是JavaBean。JavaBean里有set()和get()方法,用这些方法能很容易地传值,逻辑上更标准,代码看起来也更规范。但set()和get()方法只是用来对属性进行操作的,所以如果是进行复杂的逻辑或对数据库进行操作等,那么就不要写成set()和get()方法,只用一个有返回值的方法就足以。这样直观方便,且符合规范。
接着是Servlet。它给我的第一感觉是很专业、很难懂。书上介绍了一大堆接口、类、和重写的方法,一时觉得晕头转向。后来用得多、看得多了,Servlet的基本格式也记得差不多,其实也没什么难的。只要记住Servlet是一个用Java编写的应用程序,在服务器上运行,用来处理请求和响应,也可以单独做为一个Web页面。
在JDBC技术这章,我感到学习的压力。JDBC的工作原理、JDBC的分类、它的主要接口、以及它连接数据库的基本过程和运行效果等事先后我没有听懂。后来在图书馆借到了一本资料书电子工业出版社出版的《JavaWeb从初学到精通》适合Java开发Web应用和J2EE方面的初学者加上编程实战演习,总算弄懂了点眉目。
最后一章主要是一些技术专题。例如访问路径问题、结果集处理、复杂查询等。在前面几章的的能力功底基础上这章显得要简单轻松地多。大致类似于对前面知识的系统总结。
以上就是对这个阶段学习的一段回顾。接下来我想总结一下自己的学习心得:首先学习这门课程,就必须先要了解什么是web应用。通过浏览器可以访问新浪网、中华网、淘宝网、网易、搜狐网、微软的网站及sun公司的网站等,这些就是Web应用。对于web应用,我们需要使用浏览器,通过网络访问在远程的服务器运行的程序。Web应用指的就是这些网站中的程序。
其次,是编程。学习编程最重要的就是勤记忆,勤练习,勤思考。需要记忆很多,有些东西必须要死记,没有偷懒的办法,在记忆的时候可以找一些规律,比如把类似的东西归在一起记忆。平时在做练习的时候书上的例题和习题很重要,只要把书上的例子吃透,课后的习题都会做,这样就能达到掌握知识的目的,最后在期末复习的过程中要不时地复习前面的知识,这样才能熟练掌握所学的知识。在勤思考方面,就是在平时的编程演练中遇到困难的时候不要立刻急着去问身边的同学或是老师,自己应当对照课本或是相关的学习资料慢慢进行修改,只有在自己确实已经尽力但仍然不知如何操作的情况下才可以去询问别人,只有这样才可以加深自己的影响。
还记得自己当初最开始时学习java的情景。那时自己除了知道什么是继承,封装,多态,抽象类,接口这些外,其他的就什么都部知道了。后来自己在慢慢摸索的过程中才逐渐积累了对这门学科的敏感度开始接触Java觉Servlet是一个非常深奥的技术。我曾经想学习网页设计,看到HTML哪些松散的标记,我放弃了,最终也没有学会做网页。只知道网页编辑工作有Drameware或FrontPage。当接触Serlvet后,发现做网页竟然也可以像写Java程序一样进行编写。完成第一个用Servlet写的WEB版的HelloWorld程序,足足花费了我半天时间。主要是花费在环境搭配上面。一个小小的HELLOWorld,用Drameware可能也就一分钟就能搞定的事。对于一个完全不懂HTML的人来说,要想用Servlet来开发动态WEB应用还是太难了。接下来很快就接触到了JSP。JSP并不需要我在Java程序里写HTML代码,而是变成了在HTML中写Java程序。初学时,所有的数据库连接,数据库访问,数据显示,业务代码和HTML标记等都写在JSP代码中,感觉JSP真是无所不能。在做一些小应用时,开发速度也非常的快。而当遇到了比较复杂的业务逻辑后,JSP开发就像是一个恶梦,每天大量的工作就是调试页面,当其它页面需要类似的功能时,进行代码拷贝来进行代码的复用,后来才知道这就是典型的Model1模型。当把JSP与Servlet相结合后,一切都发生了改变。JSP仅用于数据展示,而Servlet用于进行业务调用和页面流程控制,这就是所谓的Model2模型。原来JSP并不是Servlet的替代品,JSP更需要与Servlet进行合作。再明白了Servlet与的重要后,才回过头开始去学习Servlet,包括Servlet的生命周期,Servlet的重要接口及方法,自定义标签等。通过这样反复的联系我终于在面对java和jsp时不再像以前那样那么没有自信了。
所以花费些力气去学习Java基础,学习Jsp,Servlet,甚于学HTML,Javascript对进行Web开发都是十分必要的.。
-
读书笔记吧小编精心推荐:
- java心得体会 | java习心得体会 | 学习心得体会 | 学员学习心得体会 | 学习java心得体会 | 学习java心得体会
最后我想总结一下学习方向的建议,JAVA基础知识是学习任何JAVA扩展体系知识的前提,所以在学习javaweb的过程中,一定得抽时间学习JAVA基础,窝在图书馆找到了基本相关的读物《Java核心技术》《Java编程思想》和JDK的API文档。另外由于编程有一些专用的英语术语,因此学好一些必要与之相关的英语对我们今后更好地学习这门学科是很有帮助的。
学习java心得体会 篇7
1)现在有T1、T2、T3三个线程,你怎样保证T2在T1执行完后执行,T3在T2执行完后执行?
这个线程问题通常会在第一轮或电话面试阶段被问到,目的是检测你对”join”方法是否熟悉。这个多线程问题比较简单,可以用join方法实现。
2)java的堆和栈的区别:
堆:是一个运行时数据区,类的对象从中分配空间。这些对象通过new,newarray,anewarray和muitianewarray等指令建立,它们不需要程序代码来显示释放。堆是由垃圾回收来负责的,堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,因为它是运行时动态分配内存的,Java垃圾收集器会自动收走这些不再使用的数据。但是缺点是:由于是要在运行时动态分配内存,存取速度较慢。
栈的优势:存取速度比堆要快,仅次于寄存器,栈数据可以共享。缺点是,存在栈中的数据大小与生命期必须是确定的,缺乏灵活性。栈中主要存放一些基本类型的变量
(int,short,long,byte,float,double,boolean,char)和对象句柄。
3)java算法:
1、冒泡排序:从头开始,依次对相邻的两个元素进行比较,发现有顺序错误就将它们调换过来!重复地进行,直到没有元素需要交换。是稳定排序法,最好的时间复杂度是O(n);
2、快速排序:思想是(Divide)选取一个基元X开始(一般选取数组的第一个元素),通过某种分区操作将数组划分成两个部分,左边部分小于等于X,右边部分大于等于X。(Conquer)左右两个子数组递归地调用Divide过程,(Combine)快排作为就地排序算法,不需要任何合并操作!
3、递归:程序调用自身,并非不会无休止地调用下去,需要有一个出口,当满足条件时程序也就结束!不然的话,就会出现程序死循环。
4)JVM调用GC的频度还是很高的,主要两种情况下进行垃圾回收:第一个就是当应用程序线程空闲,另一个是java内存堆不足时,会不断调用GC,若连续回收都解决不了内存堆的不足。
4)、junit测试的方法的类型必须是public ,其他类型运行时会报错。方法的返回类型也必须是void,并且不能有参数。
5)、List
args = null; args.add(param);//这样会报错
分析原因:List是一个接口,没有实现是不能使用的,需要ArryList的实现类或者其他实现类才能使用
应该改为:List
args = new
ArrayList
();args.add(param);
6)、如A是父类,B是继承于A,两者都有构造函数和A有print(),B也覆盖了A的方法,那么可以A a = new B();此时a.print();调用的`是B的print()方法,如果B的print()没有覆盖父类的方法,而是自己创建的print();那么这时a.print();调用的还是B的print()方法。另外,假设A有print1()方法,B没有覆盖A的print1();这时a.print1();不会报错,它
将调用的是A自己的print1()方法。最后,加入A没有了print()方法,而是print()是只有B有,这时a.print();将直接调用B的print();方法,总结: 对于类的继承,父类通过子类实例化后,构造方法都在先执行父类的构造方法,再依次执行子类的构造方法。方法的调用原则是先执行子类的方法,如果子类复写了父类的方法,将执行子类的方法,如果子类没有复写父类的方法,但是方法重名,也会只执行子类的方法。如果子类没有对应的方法,那么就执行父类的方法!(不要以为子类没有该方法编译器会报错,因为继承了父类的方法!)请注意:B b = new A();编译器会报错,这也是不合逻辑的!
学习java心得体会 篇8
我是零基础来到合肥达内学Java的,学习难度自然要比计算机专业的同学大很多。学习的第一个月是最痛苦的,不管是学习上还是心理上都承受了巨大的压力,这时候就要学会自我调节。达内的课程体系安排的非常合理,特别照顾到零基础学员的接受能力,我们只要跟着讲师的进度把每天的任务完成,将每天的代码练熟,知识点及时地复习好就行了。另外达内的考试制度也是相当的合理,让我们在考试中对学过的'知识进行温习,不至于学了后面的忘了前面的。
培训进入到第二个月,上课的代码量一天天的增加,我们可能要挤出所有的时间来复习一天的代码,虽然很累但要坚持。我相信别人能学好的自己也能学的很好,给自己定的目标只要不是倒数第一就行了。别人每天练习代码到一点,我就练到两点,别人在休息,我就在练习。我相信只要我付出了,即使我输了也问心无愧,不留遗憾。
经过了懵懵懂懂的第二个月,转眼第三个月就来到了。有了前两个月的积累,自己已经形成了一定的思维模式。虽然每天的代码量还在一天天的增加,接触到的语言和知识点也越来越复杂,但是这时我们更注重的是编程的思想,在敲代码的过程中慢慢加深对编程的理想。期间很多知识点有可能上课听懂了,但自己动手可能就无从下手了,也有上课没怎么听懂,但在练习代码中忽然就豁然开朗了。
第四个月进入项目实战阶段,主要是把前面的知识点全部串联起来,穿插技术处理的难点,建立对项目开发的设计思维,学会去运用固定的模式实现业务的需求。
达内的培训四个月循序渐进,我从零基础到能够独立编码,真是收获了太多。在此感谢达内的所有老师,和一起走过四个月美好时光的同学们,感谢他们对我的关照和帮助。
-
为了您方便浏览更多的学习java心得体会网内容,请访问学习java心得体会