当我们对人生或者事物有了新的思考时,往往会写6篇心得体会,如此就可以提升我们写作能力了。那么好的心得体会都具备一些什么特点呢?下面是小编收集整理的java学习心得,欢迎阅读与收藏。
java学习心得体会 篇1
对于很多只会C语言的初学者而言,面对java基础语法学习,反而感觉很难,其实其中最大的问题不是语法难,而是一种编程思想的转变。面向过程就是把你的代码封装成函数,然后依次去做一件事情,面向过程是把你要做的事情抽象成对象,告诉对象去做。所以要想学好java入门,必须知道类和对象的概念。
类是对生活中事物的抽象描述,比如人类,动物类,交通工具类;对象即是对类的具体实例化,比如张三是人,猫是动物,飞机是交通工具(对象-----类)。Java基础入门学习路线可以总结为四步走:
1.java开发环境的搭建;
2.java初级之基础语法学习(80%类似C语言);
3.java中级之面向对象编程学习(重点);yJs21.COm
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
1.学习之路,不走弯路,就是捷径
软件开发之路是充满荆棘与挑战之路,也是充满希望之路。Java学习也是如此,没有捷径可走。所有的人都期盼成功,但是并不是每个人都会为走向成功全力以赴。人们在渴望成功的同时,也渴望能够少一分努力,多一分收获。而事实上要获取真正的成功,每个人都必须经历艰辛。无论你出身豪门,还是出身寒舍,你都不得不接受这样一个事实:成功没有捷径可走,只有顽强的意志与坚持不懈的奋斗才能带你走向成功。
2.如何学习程序设计?
Java是一种平台,也是一种程序设计语言.首先一定要保持热情,买一本关于这种语言入门的书,一开始不要看太难的,循序渐进,先看一遍。多练基础代码,将各种语句练得非常熟练,可以选一些计算机语言初等练习题做做。再重头到尾好好看一遍,哪里不懂,可以与他人交流。多看看别人用这种语言写的程序,借鉴编程方法,对自己错误的思想进行校正。多多练习,每天都打一些代码,毕竟熟能生巧!
3.培养兴趣
兴趣是指一个人力求认识某种事物或从事某种活动的心理倾向。知识是兴趣产生的基础条件,因而要培养某种兴趣,就应有某种知识的积累,学习编程,就应该多看看那方面的书籍,不仅能提高自己的文化内涵,也能渐渐培养自己的学习热情。有空多到一些程序员论坛转转,你会发现,他们其实很乐观幽默,时不时会冒出智慧的火花。
4.脚踏实地,循序渐进
现实生活中,人人都有梦想,都渴望成功,都想找到一条成功的捷径。其实,捷径就在你的身边,那就是勤于积累,脚踏实地,积极肯干。无论做什么事都要戒骄戒躁,踏实地走好每一步,让自己的生活有目标、有计划,这样我们的生活才会变得充实,我们离成功也就越来越近了;相反,如果浮躁、急功近利,就不能集中精力去完成自己的人生目标,最后很可能一事无成,一败涂地。
5.多实践,快实践
纸上得来终觉浅,绝知此事要躬行.软件开发是一门工程学科,注重的就是实践,"君子动口不动手"对软件开发人员来讲根本就是错误的,他们提倡"动手至上",但别害怕,他们大多温文尔雅,没有暴力倾向,虽然有时候蓬头垢面的一副"比尔盖茨"样。有前辈高人认为,学习编程的秘诀是:编程、编程、再编程,笔者深表赞同。不仅要多实践,而且要快实践。我们在看书的时候,不要等到你完全理解了才动手敲代码,而是应该在看书的同时敲代码,程序运行的各种情况可以让你更快更牢固的掌握知识点
6.多读好书
书中自有黄金屋,书中自有颜如玉。培根说,“读史使人明智,读诗使人聪慧,演算使人精密,哲理使人深刻,伦理学使人有修养,逻辑修辞使人善辨。”从书中可以领悟“不以物喜,不以己悲”豁达情怀,亦可以领略“天下兴亡,匹夫有责”的豪迈心胸。从好书中提升了思想境界,陶冶了情操。
7. 思想的领悟
学习Java也是如此,必须要有扎实的基础,你才能在J2EE、J2ME领域游刃有余。掌握了基础语法和Java程序运行原理后,我们就可以用Java语言实现面向对象的思想了。面向对象,是一种方法学;是独立于语言之外的编程思想;是CBD基于组件开发的基础;属于强势技术之一。
java学习心得体会 篇3
此次只实训了短短的三周。虽说时间很短,但其中的每一天都使我收获很大、受益匪浅,它不但极大地加深了我对一些理论知识的理解,不仅使我在理论上对Java有了全新的认识,在实践能力上也得到了提高,真正地做到了学以致用,更学到了很多做人的道理,对我来说受益非浅。除此以外,我知道了什么叫团队,怎样和团队分工合作;同时我还学会了如何更好地与别人沟通,如何更好地去陈述自己的观点,如何说服别人认同自己的观点。这也是第一次让我亲身感受到理论与实际的相结合,让我大开眼界。也是对以前所学知识的一个初审吧!这次实训对于我以后学习、找工作也是受益菲浅的,在短短的三周中相信这些宝贵的经验会成为我今后成功的重要的基石;这对于我的学业,乃至我以后人生的影响无疑是极其深远的。
这次实训虽然是我们的第一次,不过同学们表现不错,由此看来,我们在进入大学的这几个月里学到了不少的专业知识,只是自己感觉不到而已。对于所学专业,我们不能过于自卑和担忧,否则会妨碍自己学习。实训是学习Java的重要环节,有利于我们巩固专业知识、掌握工作技能,提高就业筹码。
我把本次为期三周的实训看作是“理论与实践相结合的桥梁”。通过这周的实训和学习,我知道了此次实训的目的,也清楚目前自己的不足,那就是缺乏相应的知识与经验,对所学的专业知识不能够很好地运用于实践操作。正所谓“百闻不如一见”,经过这次自身的切身实践,我才深切地理会到了“走出课堂,投身实践”的必要性。平时,我们只能在课堂上与老师一起纸上谈兵,思维的认识基本上只是局限于课本的范围之内,也许就是这个原因就导致我们对专业知识认识的片面性,使得我们只知所以然,而不知其之所以然!限制了我们网络知识水平的提高。但是课本上所学到的理论知识是为我们的实际操作指明了方向、提供相应的方法,真正的职业技巧是要我们从以后的实际工作中慢慢汲取的。而针对实际操作中遇到的一些特殊的问题,我们不能拘泥于课本,不可纯粹地“以本为本”。
在这次实训中我得到了许多收获,我第一次体会到Java工程师的工作是什么样子的,也发现了很多不曾注意到的细节,在实训的演示过程中,我对作为一名Java工程师注意的事项应该从小事做起、从基本做起。把职业能力训练与职业素质有机的结合起来。相信这对我接下来学习专业知识会起到很有效的.帮助,在接下来的几个月里,我会以作为一名职业人的身份在这几个方面要求自己,严格自我,向Java工程师靠近。
而经过这次实训,让我明白如果是一个完整项目的开发,必须由团队来分工合作,否则,即费力又费时还做不好这个项目。因此不管在工作中还是在生活中要和老师、同学保持良好的关系是很重要的。做事首先要学做人,要明白做人的道理,如何与人相处是现代社会的做人的一个最基本的问题。对于自己这样一个即将步入社会的人来说,需要学习的东西很多,他们就是最好的老师,正所谓“三人行,必有我师”,我们可以向他们学习很多知识、道理。
实训结束了感觉虽然辛苦,但很充实。我想这就是Java工程师的工作。我也体会到Java工程师成功地完成一个任务的那种兴奋,那种小有成就的感觉是只有置身其中的人才能体会的。
总之,这次实训为我提供了与众不同的学习方法和学习体会,从书本中面对现实,为我将来走上社会打下了扎实的基础。作为在校计算机专业的学生,现在我能做的就是吸取知识,提高自身的综合素质,提高自己的职业技能,自己有了能力,到时候才会是“车到山前必有路”。我相信在不久的未来,会有属于我自己的一片天空。
我希望计算机专业的同学在以后的学习或工作中以务实的态度给提供更多的机会锻炼自己,为大家的成才与就业奠定坚实的基础;并希望同学们要做好角色定位,将自己所学的知识,学熟、学精。
多学习和收集与项目有关的资料,来提高自己的业务水平,同时多请教经验丰富的老师,使他们好的经验能够对自己起到借鉴作用,在他们的帮助下,能够很快的培养自己的管理技能及节省时间,避免做无用功,也可以让自己了解很多项目管理上的捷径,从而减少自己会遇到的挫折和错误。
java学习心得体会 篇4
作为一名软件工程的学生,学习java是我学习的重中之重,在长达一年的学习过程中,我也对java也有新的认识。
我在漫长的学习java的岁月中,遇到了许多大大小小的困难。首先,在学习java开始中,老师往往会布置很多代码题进行实操或者书写在作业本上。在刚刚开始的几次作业中,我往往因为自己的浮躁与不耐烦,直接向同学要他们的代码把作业上交,但渐渐的发现,课堂跟不上,成绩不佳,我陷入了迷惘中……后来,意识到自己学习java的态度与方式是不对的,经过调整,也有了自己的一份学习java的心得体会。
java的学习需要理解代码的思路。在写代码与学习java知识点时,往往对于每句代码都应该理解透彻,在以后的代码书写中,自己才能写出正确的代码,甚至于找出自己的`代码错误。这对于代码的理解透彻,就需要自己在上课时,好好理解老师的代码思维,自己也需要多看看关于代码的书,加深理解。
java的学习需要多做,多思考。在java学习中,不仅要学会打课内的代码,也需要通过百度找寻课外的代码,举一反三,自己解决很多的问题。
在这一年的学习中,我对于java有了初步的认识与了解,我知道自己真正掌握java还需要一段时间的学习,但我相信我自己只要有颗想学习好java的心,对于以后的困难是不惧怕的,我相信在学习java中,自己是在此过程中不断成长的,进步的。
java学习心得体会 篇5
1、项目一定要全新的项目,不能是以前做过的。
2、项目一定要企业真实项目,不能是精简以后的,不能脱离实际应用系统。
3、在开发时要和企业的开发保持一致。
4、在做项目的时候不应该有参考代码。
长话短说就是以上几点,如果你想要更多的了解,可以继续往后看。
一、项目的地位
因为参加就业培训的学员很多都是有一定的计算机基础,大部分都具备一定的编程基础,尤其是在校或者是刚毕业的学生,多少都有一些基础。
他们欠缺的主要是两点:
(1)不能全面系统的、深入的掌握某种技术,也就是会的挺多,但都是皮毛,不能满足就业的需要。
(2)没有任何实际的开发经验,完全是想象中学习,考试还行,一到实际开发和应用就歇菜了。
解决的方法就是通过项目练习,对所学知识进行深化,然后通过项目来获取实际开发的经验,从而弥补这些不足,尽快达到企业的实际要求。
二、如何选择项目
项目既然那么重要,肯定不能随随便便找项目,那么究竟如何来选择呢?根据java的研究和实践经验总结,选择项目的时候要注意以下方面:
1、项目不能太大,也不能太小
这个要根据项目练习的阶段,练习的时间,练习的目标来判断。不能太大,太大了做不完,也不能太小,太小了没有意义,达不到练习的目的。
2、项目不能脱离实际应用系统
项目应该是实际的系统,或者是实际系统的简化和抽象,不能够是没有实战意义的教学性或者是纯练习性的项目。因为培训的时间有限,必须让学员尽快地融入到实际项目的开发当中去。任何人接受和掌握一个东西都需要时间去适应,需要重复几次才能够真正掌握,所以每个项目都必须跟实际应用挂钩。
3、项目应能覆盖所学的主要知识点
学以致用,学完的知识点需要到应用中使用,才能够真正理解和掌握,再说了,软件开发是一个动手能力要求很高的行业,什么算会了,那就是能够做出来,写出代码来,把问题解决了,你就算会了。
4、最后综合项目一定要是实际应用系统
学员经过这个项目的练习,就要走上实际的工作岗位了,如果这个系统还达不到实际应用系统的标准,学员练习过后也还是达不到企业实际的需要,那么这个培训应该说质量就不高了。理想的状况是这个项目就是实际项目,到时候学员就业到另外一个公司,不过是换个地方干活而已,完全没有技能上的问题。
三、java怎么选择项目
这个不是靠想象,而是根据实际的情况一步一步分析出来的(呵呵要卖弄一下:这也算是逻辑思维),当然这里只是讨论方法,不涉及具体的项目案例。
我们可以采用倒推的方式来分析:
(1)最终的项目一定是真实的项目,也就是要把学员训练到能够独立开发实际应用,通常我们还不能选最简单的项目,因为学员的吸收还要有一个折扣,所以最终的项目应该选实际项目中中等难度的项目
(2)最终项目定下来过后,开始分解这个项目,看看为了达到完成这个项目需要哪些技术和知识点,以及每部分知识点的深度,然后定出每个分阶段的任务。
(4)然后是选择上课期间的演示项目,演示的项目是为了做分阶段项目服务的,可以认为是分阶段项目的分阶段项目。
(5)最终把要求掌握的知识点和要求掌握的深度,分散到日常教学和练习中。
好了,把上面的分析用正向描述就是:
日常教学和练习中学习和掌握的知识——演示项目——分阶段项目——综合项目——胜任企业实际开发需要。
附注:有了好的项目还要有好的训练方法(这个另外立文讨论),最最基本和重要的一条就是:绝对要指导学生亲自动手做,而不是看和听,所以尽量不要选择有现成代码的项目,演示用的项目也最好不配发代码,让学生能够跟着做出来才是真的掌握了。
上面阐述了java对项目的态度和基本选择方法,这里再把其中几个重要的、与众不同的特点阐述如下:
1、真项目
项目一定要真实,要是企业实际应用的,不能是教学性的项目,否则会脱离实达不到项目实训的效果。还有一个一定要是最新的项目,企业的要求也是在不断变化的,应用技术的方向和层次也在不断变化,这些都体现在最新项目的要求上,旧项目所要求的技术和层次很可能已经过时了,根本达不到训练的目的。
java的做法是:没有固定项目,每个班做项目之前会从企业获取最新的项目需求,然后经过挑选和精心设计,以保证既能训练技术,又能得到实际的开发经验。这样实现了跟企业的同步,企业做什么,我们就学什么,然后也跟着做什么。
2、真流程
开发的流程也要跟企业的实际开发保持一致。从项目立项开始,到需求分析、概要设计、详细设计、编码、测试的各个环节,都要完全按照真实的开发流程来做。
java的主力老师都是实战出身,在java开发方面都至少有七年以上的开发经验,同时具备多年的项目管理经验,所以能够完全按照企业开发的流程来训练学生。
3、真环境
开发的环境也要跟企业一样,包括常用的开发工具、开发平台、应用服务器、常用插件、测试工具、项目管理工具、项目管理文档等等。
java的做法是:构建跟企业完全一样的环境,然后跟企业开发一样,分团队开发。老师就相当于项目经理,一个班分成多个小组,每个组有自己的teamleader,大家分工合作,共同完成项目。
4、真开发
这是java最与众不同的一点,java深知:软件是做出来的,而不是听出来或者看出来的,企业需要能实际开发的人员,而不是只听过、看过但不能做的人。所以java非常强调:项目一定要让学生动手写出来。
java的做法是:老师做为项目经理,带领着大家一起去做需求分析、概要设计、数据结构设计、接口设计、重要业务流程的分析设计等,然后由学生们分团队进行开发,实现整个项目。这里有几个与众不同:
(1):现场带领学生一起做分析和设计,而不是预先做好了来讲讲。因为需要学生学习的是分析设计的过程和方法,而不是已经做好的结果。
(2):java选用的项目基本都是企业最新的项目,很多都是java的学生和企业在同期开发,所以是不配发源代码的。这样也断绝了学生的依赖思想,认认真真去开发。可能有同学会问:为什么不选择有源代码的项目呢,那样还可以参考学习啊!
事实上,java界最不缺的就是代码了,那么多开源软件,小到一个工具,到企业级erp都有开源的,而且很多都是大师级的作品,说实话比你参考的那些代码质量高多了,但是又有多少人能真正看明白呢,原因就在于达不到那个水平,看不懂代码背后所体现的设计和思想以及为什么要这么做,效果也就不好了。
当然不排除有这样的高人是能够完全能理解和掌握这些大师级作品的,但估计不会是刚开始学习java开发的学生,所以java根据多年的培训经验,友情提示:在初学阶段,看一千遍,听一千遍,都不如自己动手写一遍所达到的学习效果。自己能写出来的功能才是你真正掌握的功能,而不是你看得代码或者是听老师讲的,就算讲过看过,但是自己做不出来,那都不算会。
(3):java在课堂上除了带领学生去分析设计外,还会分析一些重点、难点功能的实现机制和原理,然后指导学生去实现。
5、真技术
java在每个项目中,特别会抽取有难度的部分让学生们在老师指导下实现,专门啃硬骨头,那才能真正锻炼学生的开发能力。
比如:在做oa类的项目时,会重点去做工作流、公文收发、在线office控制等;在做crm类项目时:会重点去做销售自动化和市场块的业务;在做人力资源类项目的时候会重点去做人力跟踪和人力评测模型等。
java在每个项目中,都会使用目前企业最新最流行的技术,按照最新的难度去要求,从而让学员能更符合企业的需要。
6、真经验
java的项目都是企业最新的真实项目,经过开发训练,学员能够积累足够的真实的开发经验,以胜任企业的工作需要。在进行项目分析时,还会全面讲解项目所要求的业务,让学员从业务和技术上都能充分积累。
7、真实力
作为就业培训,项目的好坏对培训质量的影响非常大,常常是决定性的作用。这篇文章是关于在学习java软件开发时练习项目的总结,简单总结为以下几点:事实上,不采用有源代码的教学性项目对java的要求非常高。试想一下,如果项目分发下去,老师带着分析后,学生都不会做会出现什么样的后果?这对java的教学质量提出了极高的要求,如果教学质量达不到让学员独立开发的水平,对依靠质量取胜和口碑发展的java将是毁灭性的。
另外一个,由于是全真的项目,在开发的过程中,肯定会有很多的问题出现,这些都要老师去解决,由于不像教学项目那样预先做好,又需要老师能很快地解决各个问题,这对老师的真实开发水平有极高的要求,这可是需要真功夫的。
总结:
总之,java通过真实的项目,真实的开发环境和开发流程,指导学员去真正开发,让学员得到真正的锻炼,收获真正的开发能力。
有了真正的开发能力——能够胜任企业的实际需要——高薪好工作。
java学习心得体会 篇6
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();编译器会报错,这也是不合逻辑的!