java个人总结(共18篇)由网友“扶桑树下Z”投稿提供,下面是小编整理过的java个人总结,欢迎您能喜欢,也请多多分享。
篇1:java个人总结
时光荏苒,白驹过隙,一转眼20xx年已经过去一半。回首过去的半年时间,有收获有遗憾。立足当下,放眼未来,半年的工作与生活总结如下:
一.技术能力稳步提高。20xx年上半年在现有报表系统,Oracle数据库操作等技术的基础上,深入提高了java后台接口的开发能力。经过半年的后台开发实践,已经基本掌握java后台开发的架构和java语言编写技能,扫清了初识java语言函数和规则模糊不清的障碍,提高了后台接口开发和测试的效率和准确率,掌握了独立完成后台接口项目的java代码开发的基本功,增强了解决疑难杂症的技术水平。
二.技术领域逐步扩大。随着后台能力的强化,进一步夯实了sql语言,存储过程等底层数据处理的根基,在掌握java后台接口开发的基础上,新增前端页面的设计开发能力,实现从数据到接口,再从接口到前端的全栈式开发能力的链接,打通不同领域的技术壁垒,减少了上下游沟通的延迟,提升了项目开发的效率。
三.参与项目更加多元。20xx年上半年参与大数据推荐系统,报表数据可视化等重点项目的同时,承接部分支撑工作,点面结合,相得益彰。同时处理多项工作能力有所提高,项目规划能力有所增强。
四.上半年坚持锻炼,身体素质有了进一步提升,健康状况持续改善,亚健康状态有所减少,工作和生活质量稳步提升。
篇2: java培训个人总结
转眼间,几个月的培训已经将近尾声了。回想自己这几个月的经历,自己收获颇丰,觉得自己来到这培训是非常正确的。想想自己刚刚考虑打算来这培训的时候那忐忑的心情,现在我已经有了答案:“我很庆幸自己选择了这条路”。
在这,我收获了硕果累累的知识果实。我的培训方向是主攻Java方向,后期还学习了当下比较流行的Android技术。在培训期间,我们主要是通过实际操作具体的项目来学习并温顾所学知识。这正是我们所需要的锻炼。在学校里,我们虽然学习了很多专业的知识,但是我们并没有自己所擅长的方面,并且我们学的都是理论上的知识,实际动手能力是很差的。所以,我们需要培养自己的动手能力。同时,我们的老师都是操作过实际项目的,都有一定的工作经验,他们不仅给我们讲专业知识,还给我们传授职场上的技能。培训就给我们提供了一个培养我们踏入职场所需要的东西的平台。
在这里,疯狂软件的老师们给了我一份详尽而合理的课程安排,在学习期间,我在这里学到了许多以前不会的知识,完善和补充了我已有的知识,使我从最初对Java开发懵懂、茫然变成有自己的知识体系,能够熟练而自信的开发互联网项目。疯狂软件Java培训拥有良好的学习氛围,我在这里慢慢的踏实了下来,为自己将来更好的发展打下了坚实的基础。
在这四个月的学习中,每个人都有一台自己的电脑,可以随时上机实践,验证和实践自己的想法和所学知识,再有知识渊博的老师无私的解惑答疑,使每天的生活都很充实,知识在层面上也有了一个质的飞跃,虽然很累但是也很开心。我了解到Java就业工资都很不错,所以我要努力奋斗,达到自己心中的目标。
总之,通过这次培训,我找到了自己的奋斗目标,找准了自己的职业道路。毕业后,我入职了越川网络科技有限公司,职位是Java工程师。我今后会先从一个能吃苦耐劳的码农开始,经过两三年的奋斗,累积了一定的业务知识之后,再慢慢往上爬。
篇3:java培训个人总结
java语言是一种跨平台的高级语言,无论是网络世界和桌面应用程序,还是分布式应用环境和嵌入式应用都可以看到java的身影。显然java语言依然保持着旺盛的生命力,这也使得众多的从业人员开始学习java语言。
java技术入门使读者对java语言有个初步的了解,为后面的深入学习奠定基础;面向对象技术是需要读者认真学习和体会的,第三篇编程提高篇详细讲述了java语言的高级主题,即读者进阶学习的必备内容;java分布式计算技术的内容,如果读者对web编程感兴趣,相信本篇可以满足您的需求。为了说明java语言的应用,《java完全自学手册》最后一篇介绍了一个实例,通过该程序从无到有的过程使读者知道如何使用java语言编写应用程序。
刚开始头绪有点乱,尤其是看了thinking in java第四版前面后,你知道那感觉,啃啃不下去,实例每个都看的似懂非懂,一两个还行,多了就慌了,更何况他的内容也看不太懂,虽然硬着头皮往后走,但走到第三章就觉得不能再这样了。上网找,一个视频教学,孙鑫老师的那个视频,老师讲的细致,各种小细节都不放过,开始还认真的一句一句听,后来也觉得有些东西用的时候查书google就好了到没必要听讲的时候弄懂。但好在孙鑫老师讲的大致还是沿袭中国人能懂的语言,比起thinking in java来说,确实是听懂了。所以到了lession4以后,我就大量使用快进了。讲下自学心得,给准备学习的朋友理个大概框架,尤其是有一点asp一类语言基础的,就更合适了:
基础,java编写的时候,用记事本或者编译工具,把java语言写出来,然后用javac编译写好的语言文件把它编译成class文件,class文件就是机器最终执行的文件(至于class里面是什么样的,机器是怎么中转又编译的,我们就不用管它了)。前面涉及到要配置java目录、classpath目录几个工作,很多讲座要在这里花上一两堂课,我看用不着,你就记着查google百度把path和classpath设好,就ok可以开始用了。
java以class为基本单位,一个class实现一个基本功能或者模块或者接口,一个java文件里面你可以编写多个class,但一编译就会变成多个class文件,
跟你分开写效果是一样的。class里面如果包含main方法,就是机器最后执行的class,(其他不含main方法的class为执行的这个class提供各种方法)java就是用class这个概念把各种功能模块化,当你把一个一个功能都写好或者系统本身就有这个功能的class的时候,你就直接调用现成的class,就不用额外再去写了,就省心。比如有个class他能把这个三个数字按照我们设定好的方式组成一个矩形,当我们下次要用这个矩形的时候,就不用再重复写三个数字到矩形的过程,只要把三个数字交给写好的那个class让他组合成矩形,我们把矩形拿过来用就好了;比如有个class他能把每个学生各门成绩都加总,我们要做学生总分排名的时候,只需要调用这个现成class把成绩给他加总,我们不再去写成绩如和加总的过程,直接使用加总结果排名就可以了。也就是,很多功能、模块,系统有的用系统的,别人有公用的拿别人的用,自己以前有写过的用自己以前写过的,只有这三个都没有的,才需要自己动手去写,这样一排除下来,还真的就没多少需要我们自己写的了,所以才说java比较省事。
class有分属性,公开的就是写完谁都能用,还有默认的,还有保护的,还有私有的,因为class可以模块化,所以才有这个属性,有些写完谁都能用,有些写完必须要放在一个目录下才能用,有些写完就不能给外面用了。具体适用范围用到的时候查google。
方法,class里面跟class同名的叫做构造方法,如果没有写,意思系统会隐含了一个构造方法,写了自然就没有隐含的了。方法里面就可以进行各种具体的操作,比如定义变量,比如输出结果,比如判断,比如实例化对象等等。main方法是系统找到会运行的方法,写方法就跟其他编程比如以前我用的asp差不多,形式有点不同意思差不多,特别点的就是所谓的面向对象,除了实例化对象这一点稍微理解一下,其他方法内部的编写跟asp差不太多,你比如说dim x,这是asp,不用声明类型,到了java就是int x;其实asp里面也可以声明类型,dim x as int;还有比如x=x+5;asp里面就是没有那个最后的;而已,比如for循环、while这些也都差不多,还有print跟response。write也感觉差不多,就是输出字符嘛,大同小异。java里面你就理解下实例化对象(对象都来自class,class
里面方法怎么写的,说明你这个对象实例化后可以干些什么,方法里面带了什么参数,就说明你这个对象实例化后将有些什么参数);再理解下怎么把现有的class弄进来使用;其他就跟其他编程差不多了,我以前只学过asp,不过做了十年asp算是理解比较深,原以为java输入真正编程软件应该比asp难很多,最后发现除了上面两点外,其他技术范围基本没有超出asp的技术范围只是形式格式略有不同而已。
i.o里面有输入输出需要的一些东西,他可以把外面进来的东西转换成合适的格式,也可以把我们程序内的内容以合适的格式输出,例如读取文件、写入文件,读取数据、写入数据,读取网络、写入网络,都会用到io。
网络依赖tcp/ip协议,和sockets接口,服务器端调用sockets的服务器端方法,打开监听(设定一个唯一端口号调用一个现成监听方法),一旦有东西传过来他就自动开始工作了,我们用io方法获得传来的内容分析、判断,然后产生相应操作;sockets客户端也类似,只要指定了服务器ip地址和那个对应的端口号,就能链接到服务器,然后用io方法发送返回信息。
窗口部分,有相关的windows包,导入后,只需要定义窗口尺寸、位置等,按钮、文本等等也都有对应的现成的给你引用,只要一一设定好就有了,还有一些窗口固有的组件比如最小化、关闭,关联上相应的功能就可以了。
大概就学了这么多,我估计基本概念都理解了,还差一个跟数据库的交互的概念,估计也不复杂,剩下的我预计就是用别人现成源码过来修改试验,进一步体会代码了。看来java确实如外面介绍的那样,并不算复杂,还没有用jbuilder一类的软件,用了后说不定更容易。
学编程这段日子里,由无知,到心头渐渐明朗,走过很多弯路,曾因jvm机制问题驻足不前,也曾因数据结构而苦恼不已,更因提前结束的大学生活而后悔良久。只是,静下来,看代码,体会其中的思想,慢慢地,一些东西,曾经的不明白,如今也清晰起来。只要坚持,那片广袤的天地已为你留出一片天地。学编程,基
础最重要,不要贪快,一步一步,把那些知识点弄的明明白白,然后看api文档,另外网上看一些源代码,体会其中的一些编程思想,csdn论坛也是个很好的学习地方。等基础好了,就可以学一些框架了,也就是所谓的j2ee,主要用来开发web的技术。如此看来,学习java并不难,只是要一点一点,走的实实在在。工作当中,这是我对学习java的一些个人体会!
李沛
xx.7.28
篇4:java培训个人总结
作为就业培训,项目的好坏对培训质量的影响十分大,常常是决定性的作用。这篇文章是关于在学习java软件开发时练习项目的总结,简单总结为以下几点:
1、项目一定要全新的项目,不能是以前做过的
2、项目一定要企业真实项目,不能是精简以后的,不能脱离实际应用系统
3、在开发时要和企业的开发保持一致
4、在做项目的时候不应该有参考代码
长话短说就是以上几点,如果你想要更多的了解,可以继续往后看。
一:项目的地位
因为参加就业培训的学员很多都是有一定的计算机基础,大部分都具备一定的编程基础,尤其是在校或者是刚毕业的学生,多少都有一些基础。
他们欠缺的主要是两点:
(1)不能全面系统的、深入的掌握某种技术,也就是会的挺多,但都是皮毛,不能满足就业的需要。
(2)没有任何实际的开发经验,完全是想象中学习,考试还行,一到实际开发和应用就歇菜了。
解决的方法就是通过项目练习,对所学知识进行深化,然后通过项目来获取实际开发的经验,从而弥补这些不足,尽快达到企业的实际要求。
二:如何选择项目
项目既然那么重要,肯定不能随随便便找项目,那么究竟如何来选择呢?根据java的研究和实践经验总结,选择项目的时候要注意以下方面:
1:项目不能太大,也不能太小
这个要根据项目练习的阶段,练习的时间,练习的目标来判断。不能太大,太大了做不完,也不能太小,太小了没有意义,达不到练习的目的。
2:项目不能脱离实际应用系统
项目应该是实际的系统,或者是实际系统的简化和抽象,不能够是没有实战意义的教学性或者是纯练习性的项目。因为培训的时间有限,必须让学员尽快地融入到实际项目的开发当中去。任何人接受和掌握一个东西都需要时间去适应,需要重复几次才能够真正掌握,所以每个项目都必须跟实际应用挂钩。
3:项目应能覆盖所学的主要知识点
学以致用,学完的知识点需要到应用中使用,才能够真正理解和掌握,再说了,软件开发是一个动手能力要求很高的行业,什么算会了,那就是能够做出来,写出代码来,把问题解决了,你就算会了。
4:最后综合项目一定要是实际应用系统
学员经过这个项目的练习,就要走上实际的工作岗位了,如果这个系统还达不到实际应用系统的标准,学员练习过后也还是达不到企业实际的需要,那么这个培训应该说质量就不高了。理想的状况是这个项目就是实际项目,到时候学员就业到另外一个公司,不过是换个地方干活而已,完全没有技能上的问题。
三:java怎么选择项目
这个不是靠想象,而是根据实际的情况一步一步分析出来的(呵呵要卖弄一下:这也算是逻辑思维),当然这里只是讨论方法,不涉及具体的项目案例。
我们可以采用倒推的方式来分析:
(1)最终的项目一定是真实的项目,也就是要把学员训练到能够独立开发实际应用,通常我们还不能选最简单的项目,因为学员的吸收还要有一个折扣,所以最终的项目应该选实际项目中中等难度的项目
(2)最终项目定下来过后,开始分解这个项目,看看为了达到完成这个项目需要哪些技术和知识点,以及每部分知识点的深度,然后定出每个分阶段的任务
(3)然后开始选择分阶段的项目,分阶段的项目应该比刚才分析出来的分阶段任务稍稍复杂点,这样才能达到训练的目标。定下分阶段项目后,同样去分解,定出为了完成他所需要的各部分知识点和深度。
(4)然后是选择上课期间的演示项目,演示的项目是为了做分阶段项目服务的,可以认为是分阶段项目的分阶段项目
(5)最终把要求掌握的知识点和要求掌握的深度,分散到日常教学和练习中。好了,把上面的分析用正向描述就是:
日常教学和练习中学习和掌握的知识==〉演示项目==〉分阶段项目==〉综合项目==〉胜任企业实际开发需要。
附注:有了好的项目还要有好的训练方法(这个另外立文讨论),最最基本和重要的一条就是:绝对要指导学生亲自动手做,而不是看和听,所以尽量不要选择有现成代码的项目,演示用的项目也最好不配发代码,让学生能够跟着做出来才是真的掌握了。
上面阐述了java对项目的态度和基本选择方法,这里再把其中几个重要的、与众不同的特点阐述如下:
1:真项目
项目一定要真实,要是企业实际应用的,不能是教学性的项目,否则会脱离实达不到项目实训的效果。还有一个一定要是最新的项目,企业的要求也是在不断变化的,应用技术的方向和层次也在不断变化,这些都体现在最新项目的要求上,旧项目所要求的技术和层次很可能已经过时了,根本达不到训练的目的。
java的做法是:没有固定项目,每个班做项目之前会从企业获取最新的项目需求,然后经过挑选和精心设计,以保证既能训练技术,又能得到实际的开发经验。这样实现了跟企业的同步,企业做什么,我们就学什么,然后也跟着做什么。
2:真流程
开发的流程也要跟企业的实际开发保持一致。从项目立项开始,到需求分析、概要设计、详细设计、编码、测试的各个环节,都要完全按照真实的开发流程来做。
java的主力老师都是实战出身,在java开发方面都至少有七年以上的开发经验,同时具备多年的项目管理经验,所以能够完全按照企业开发的流程来训练学生。
3:真环境
开发的环境也要跟企业一样,包括常用的开发工具、开发平台、应用服务器、常用插件、测试工具、项目管理工具、项目管理文档等等。
java的做法是:构建跟企业完全一样的环境,然后跟企业开发一样,分团队开发。老师就相当于项目经理,一个班分成多个小组,每个组有自己的team leader,大家分工合作,共同完成项目。
4:真开发
这是java最与众不同的一点,java深知:软件是做出来的,而不是听出来或者看出来的,企业需要能实际开发的人员,而不是只听过、看过但不能做的人。所以java十分强调:项目一定要让学生动手写出来。
java的做法是:老师做为项目经理,带领着大家一起去做需求分析、概要设计、数据结构设计、接口设计、重要业务流程的分析设计等,然后由学生们分团队进行开发,实现整个项目。这里有几个与众不同:
(1):现场带领学生一起做分析和设计,而不是预先做好了来讲讲。因为需要学生学习的是分析设计的过程和方法,而不是已经做好的结果。
(2):java选用的项目基本都是企业最新的项目,很多都是java的学生和企业在同期开发,所以是不配发源代码的。这样也断绝了学生的依赖思想,认认真真去开发。可能有同学会问:为什么不选择有源代码的项目呢,那样还可以参考学习啊!
这是一个典型的误区:觉得通过看人家的代码能够加快自己的学习。这个方法对有经验的人来讲是对的,但是对于还在学习期间,没有经验的学员来讲,就是一个认识的误区了。因为你也许能看懂代码的语法,但根本看不懂代码背后的含义,看不懂代码的设计,看不懂为什么要这么实现,看不懂代码所体现的思想,其实,看了跟没看没有多大区别。
事实上,java界最不缺的就是代码了,那么多开源软件,小到一个工具,到企业级erp都有开源的,而且很多都是大师级的作品,说实话比你参考的那些代码质量高多了,但是又有多少人能真正看明白呢,原因就在于达不到那个水平,看不懂代码背后所体现的设计和思想以及为什么要这么做,效果也就不好了。当然不排除有这样的高人是能够完全能理解和掌握这些大师级作品的,但估计不会是刚开始学习java开发的学生,所以java根据多年的培训经验,友情提示:在初学阶段,看一千遍,听一千遍,都不如自己动手写一遍所达到的学习效果。自己能写出来的功能才是你真正掌握的功能,而不是你看得代码或者是听老师讲的,就算讲过看过,但是自己做不出来,那都不算会。java的主力老师都是实战出身,在java开发方面都至少有七年以上的开发经验,同时具备多年的项目管理经验,所以能够完全按照企业开发的流程来训练学生。
篇5:java培训个人总结
短短的一个月很快就过去了,在这短短的一个月里,我学到了很多,了解了很多。在这一个月里我学到了有关java等方面的知识,了解了关于软件开发的流程。了解了自己的不足,知道了自己努力的方向。
回顾这次的.实训,这次或许是最后的实训机会。我是一名大二的学生,明年或许就要出去实习了,所以我很珍惜这次的实训机会,因为它能够让我了解自己的不足以及以后自己努力的方向,同时也能让我了解软件开发的流程,增加一点软件开发经验和社会经验。让我在以后的实习中会更好的融入到其中,增加自己的就业机会,因为纵观现在的就业形势很不让人乐观,由于之前的经济危机,就业机会越来越少,就业也越来越难,这就给了我们很大的压力,所以要是没有真本事,就业岗位就无从谈起,因此,在以后的学习中,我会更加好好努力。
通过这次的实训,我学到了很多:
首先,对java识比以前有了更深的了解。在这之前由于种种原因我java学的很不好,编程我几乎写不出来。但经过这次的实训,我对java的理解,虽然还有很多都不懂,但我会在今后的实训和学习中加以学习了解,力求弄懂,增强自己对java的理解。
其次,在这次的实训中我的动手操作能力有了一点的提高,刚开始的时候jdk的配置,数据库的安装都出现了一定的问题,java可实话开发工具的不熟悉,所以开始的时候进程很慢,时间都用在
了jdk的配置,数据库的安装以及熟悉java可视化开发工具上,但付出有了回报,成功的配置了jdk,安装了数据库,熟悉了java可视化开发工具,总的说来,自己还是有一定的收获的。因为自己的动手操纵能力得到了提高。
最后是团队协作。在整个项目完成过程中团队协作有着不可替代的作用。从在刚拿到项目时对项目的分析到最后的项目完结的都有一定的体现。刚拿到项目时,我们团队进行了分析,并分配了各自的任务。当我们其中一人遇到问题的时候,我们其他人都会去帮忙,效率提升了很多。但可能由于不是一个宿舍的,大家彼此间都不是很了解,所以交流中还是存在了一定的问题。
在这次的实训当中我收获颇丰。但仅仅靠这一个月的学习还是远远不够的。所以在以后的学习中我会更加努力,提高自己的能力,让自己在以后的社会道路上打下坚实的基础。
姚新
xx年1月4号
篇6:java培训个人总结
在参加java培训的过程中,我感觉其实生活中很多时候与java编程是存在相似点。比如说我们想做一件什么事情,总是要先考虑下这件事的目的,做这件事需要先准备些什么,中间需要哪些步骤,最后怎样实现等等,这与计算机编程思想惊人的相似,所以说,在很多人看来,计算机很复杂,有数不清的代码和程序,可以完成各种各样的任务,功能千变万化,要掌握它是一件难比登天的任务,其实不然。计算机这种复杂性,完全是人赋予的,计算机只是单纯的按照人的指令去完成我们想要完成的事情,从这方面看,计算机是简单的。经过这一次的java培训,其中在java的各种对象、方法、类等方面上有了一个比较清晰的想法。当自学时你就不会听到有这样那样的想法与指导,学起来就会比较迷茫点,但是有一个比较好的老师来指点下,那样的效果上就不同了,可以让自己的想法和思维开拓点来学习java,亲身感受过后,确实跟自学不一样,自学的话自己可能没这么好去理解代码,有个人带着去理解代码的话学起来比较快点,,用起来也会容易惯通点。
通过这次也可以学到一个团队的重要,一个小项目可以一个人完成,那已经是很痛苦地那种了,但是有一个大项目的话,那就不是一个人可以完成的事了,必须由一个团体来共同完成项目,一个的技术牛不算牛,一个团体的技术都很牛了那才是真正的牛,这样合作起来就可以更快的把一个项目完成,而个人来说,也不会感到非常吃力,分功合作对于开发一个项目来说是重要的一步,在分功的时候必须分功明确,不然在开发程中会出现错乱,例如一个人开发了登陆的功能了,由于分功不明确导至另一个在也在开发此功能,分功明确了会减去诸如些类的一些错误和麻烦。
学习java听老师讲起课来,自己听得明白,但是要自己真的去动手起来做的话,那又是另一回事了,听得明白不一定就可以自己动手做出来,学习java只有听懂了再自己动手去真正的做出一些东西来运用这些代码,让代码在你脑子里转来转去不会忘记,看到有类似的功能你就会想起用这些代码来实现功能,那样才是真正的学会了,不然你就是没学会。在学习java的过程中,最需要的就是耐心,在学习过程中,你会感到很枯燥,烦恼,无聊,寂寞感,,但这些都不是问题,问题就是你能不能有很好的耐心学习下去,一般的人都是因为没耐心学下去才觉得它难,其实java语言本身不难,难的是你自己有没有这样的心去学,耐心很重要。耐心+灵活变通=学习成功
篇7:java项目个人总结
在这次项目之前,因为个人状态和心态的原因,从gui课程开始便基本处于神游的状态,状态上体现在上课精力不能集中犯困,心态上体现在明知道自己没学懂也没有主动去问休息时也没有去练习解决问题。
这样的情况导致项目的第一天我基本都在努力的想要看懂老师给的ui界面,因为我甚至不知道该在哪里插入我的代码!项目的过程中感觉就像一次开荒,遇到的每一个需求基本都要临时去学去请教才能解决,也是这样导致最后没能完成项目的所有需求,但我并没有遗憾或其他什么不安的情绪,因为我已经收获到了我想要的东西:
1.知识点的归纳整理与应用:在实际项目中将本来杂乱无章的知识点从应用的角度整理成自己能理解的体系,并去芜存精,优化提炼自己的知识点。
2:对java编程流程的理解:主要是理解到了三层架构的好处以及在编程架构上的必要性,因为个人有点马虎的原因,经常要改局部代码,如果没有使用三层架构,完全无法想象怎么从一堆代码中找出自己想要的!
3:javadoc的必要性:虽然这一次的项目中我没有做到给所有方法、类注释,但我自己写的方法基本都是先写注释,这样即能先整理一次写方法的思路,又能在后期通过清晰的注释使用或修改方法。
4:自我认识:这次项目开始的时候我曾乐观的认为大部分的功能在代码思路方面都差不多,后期不过是一个堆代码的过程,应该有机会在要求时完成项目。
然而实际写代码才发现纸上得来终觉浅,写的过程中一点很小的过失就能造成无尽的报错,一些自认为掌握了的知识点应用起来才发现漏洞百出,我粗浅掌握的知识点根本不能灵活应用。
5.纠错能力:写到上面才想起,纠错能力也是这次项目暴露的大问题,登陆功能时报的一大堆错就是老师也帮我找了好久才一一解决。
写代码中不报错是不可能的,因此纠错能力也是程序猿生存必不可少的。
篇8:java项目个人总结
这是一个典型的误区:觉得通过看人家的代码能够加快自己的学习。
这个方法对有经验的人来讲是对的,但是对于还在学习期间,没有经验的学员来讲,就是一个认识的误区了。
因为你也许能看懂代码的语法,但根本看不懂代码背后的含义,看不懂代码的设计,看不懂为什么要这么实现,看不懂代码所体现的思想,其实,看了跟没看没有多大区别。
事实上,Java界最不缺的就是代码了,那么多开源软件,小到一个工具,到企业级ERP都有开源的,而且很多都是大师级的作品,说实话比你参考的那些代码质量高多了,但是又有多少人能真正看明白呢,原因就在于达不到那个水平,看不懂代码背后所体现的设计和思想以及为什么要这么做,效果也就不好了。
当然不排除有这样的高人是能够完全能理解和掌握这些大师级作品的,但估计不会是刚开始学习Java开发的学生,所以Java根据多年的培训经验,友情提示:在初学阶段,看一千遍,听一千遍,都不如自己动手写一遍所达到的学习效果。
自己能写出来的功能才是你真正掌握的功能,而不是你看得代码或者是听老师讲的,就算讲过看过,但是自己做不出来,那都不算会。
(3):Java在课堂上除了带领学生去分析设计外,还会分析一些重点、难点功能的实现机制和原理,然后指导学生去实现。
5:真技术
Java在每个项目中,特别会抽取有难度的部分让学生们在老师指导下实现,专门啃硬骨头,那才能真正锻炼学生的开发能力。
比如:在做OA类的项目时,会重点去做工作流、公文收发、在线Office控制等;在做CRM类项目时:会重点去做销售自动化和市场块的业务;在做人力资源类项目的时候会重点去做人力跟踪和人力评测模型等......
Java在每个项目中,都会使用目前企业最新最流行的技术,按照最新的难度去要求,从而让学员能更符合企业的需要。
6:真经验
Java的项目都是企业最新的真实项目,经过开发训练,学员能够积累足够的真实的开发经验,以胜任企业的工作需要。
在进行项目分析时,还会全面讲解项目所要求的业务,让学员从业务和技术上都能充分积累。
7:真实力
作为就业培训,项目的好坏对培训质量的影响非常大,常常是决定性的作用。
这篇文章是关于在学习JAVA软件开发时练习项目的总结,简单总结为以下几点:事实上,不采用有源代码的教学性项目对Java的要求非常高。
试想一下,如果项目分发下去,老师带着分析后,学生都不会做会出现什么样的后果?这对Java的教学质量提出了极高的要求,如果教学质量达不到让学员独立开发的`水平,对依靠质量取胜和口碑发展的Java将是毁灭性的。
另外一个,由于是全真的项目,在开发的过程中,肯定会有很多的问题出现,这些都要老师去解决,由于不像教学项目那样预先做好,又需要老师能很快地解决各个问题,这对老师的真实开发水平有极高的要求,这可是需要真功夫的。
总结
总之,Java通过真实的项目,真实的开发环境和开发流程,指导学员去真正开发,让学员得到真正的锻炼,收获真正的开发能力。
篇9:java项目个人总结
经过两个星期的java项目实习,对java对象无论是各个知识点还是思想都有显著的提高。
在做《贷款信息查询服务器系统》的这两个时间中,张成峰老师给了我们很大的帮助,自身感觉进步很大。
在之前学的不太好不明白的地方,现在也有了比较清楚的认识,很感谢张成峰老师又一次帮助我们重新过了一遍java面向对象。
在这短短两个周的项目中,每天的代码量都不是之前想的那么多,但是每天都过得很充实,扩展了许多之前不知道的知识,班上的学习气氛也是空前的凝聚,虽说代码量不多,但却几乎包含了所有java面向对象的重要知识点。
本次项目可以分为:(1)表现层(2)业务层(3)持久层(4)控制器。
充分运用了封装,继承,多态,J2SE,套接字,I/O,集合,日期日历,多线程,反射,JDBC,JDOM,工厂模式....等。
扩张了许多项目中用到的知识点:单例模式、工厂模式、回调机制、数据库连接池等等。
张老师给我们的讲解中,每每都是以思想为中心,不要求我们把代码记的好熟,只要求我们能够理解思想,正因如此,许多之前堵塞的问题在项目中都有了头绪,更好的在项目中体现出来。
其次也认识到了写注释是个很重要的事情,说实话,我们之前写的代码在许多程序员中都是垃圾代码,其实说的也对,确实是垃圾,但是我们不会灰心丧气,毕竟我们现在才刚刚开始,有哪一个程序员刚开始不写些垃圾代码呢,只有这样我们才能逐步养成好的编程习惯,规范是人人必须要遵循的。
不以规矩不成方圆,如果每个人都以自己的方式来做程序,一个人有一种程序代码,一万个人就有一万种代码,那就没有一个统一的标准。
所以我们必须养成好的编码规范。
不只是为了我们自己好看,也为了给阅读我们代码的人方便。
我们尤其应该在变量名的命名上下大工夫,不能图一时的方便,必须符合“见其名知其意。
”一定要为我们的代码加上相应的注释。
通过此次项目,虽说还是成功做出来了,但也的确发现了自身许多不足的地方。
因此大家更应该及时总结,找到自己的不足之处,从今天开始改变自我,努力做到最好,在以后的学习和工作中做得更好。
篇10:java总结
一、数组、集合
数组、集合:都是一种容器,用一个对象管理多个对象;
数组:不能自动增长;只能存放同类型的元素
集合:能自动扩容;部分集合允许存放不同类型的元素;
二、学习这些集合类要掌握哪些东西:
1)怎样得到(选择)集合对象;
2)怎样添加元素
3)怎样删除元素
4)怎样循环遍历没一个元素
三、list、set、map
collection:父接口;
Set:接口---一个实现类:HashSet
List:接口---三个实现类:LinkedList,Vector,ArrayList
SortedSet:接口---实现类:TreeSet
1、List:
List:有序列表,允许存放重复的元素;
实现类:
ArrayList:数组实现,查询快,增删慢,线程不安全,轻量级;下标也是从0开始;
LinkedList:链表实现,增删快,查询慢
Vector:数组实现,线程安全,重量级
2.Set:
无序集合,不允许存放重复的元素;
实现类HashSet:equals返回true,hashCode返回相同的整数;哈希表;
子接口SortedSet:对Set排序实现类:TreeSet:二叉树实现的;
看API:泛型:表示一个对象;
Iterator:接口,迭代器;
java.util;
hasNext;
next();
remove();
Iterable:可迭代的,访问的;
ng;实现了可迭代的接口就可以用迭代的方式访问;
只需实现iterator();方法即可;Iteratoriterator();
三种循环的访问方式:
只有实现了Iterable接口的才能用第三种;能用第二种的也一定能用第三种;
ArrayList:自动扩容,是数组照搬过来的;
3.Map
HashMap:键值对,key不能重复,但是value可以重复;key的实现就是HashSet;value对应着放;
HashSet的后台有一个HashMap;初始化后台容量;只不过生成一个HashSet的话,系统只提供key的访问;
如果有两个Key重复,那么会覆盖之前的;
Hashtable:线程安全的
Properties:java.util.Properties;key和value都是String类型,用来读配置文件;
HashMap与Hashtable区别:
HashMap线程不安全的,允许null作为key或value;
Hashtable线程安全的,不允许null作为key或value;
TreeMap:对key排好序的Map;key就是TreeSet,value对应每个key;
key要实现Comparable接口或TreeMap有自己的构造器;
HashSet:remove(Objecto)的原则看这个对象O的Hashcode和equals是否相等,并不是看是不是一个对象;
定义一个Map;key是课程名称,value是Integer表示选课人数;
map.put(cou,map.get(cou)+newInteger(1));
四、Hashtable、Properties
1,Hashtable:实现了Map接口,此类实现一个哈希表,作用和HashMap相同。任何非null对象都可以用作键或值。为了成功地在哈希表中存储和获取对象,用作键的.对象必须实现hashCode方法和equals法。
2,Properties:继承自Hashtable,比Hashtable更严格属性列表中每个键及其对应值都是一个字符串。
常用方法StringgetProperty(String?key)和setProperty(Stringkey,Stringvalue);
用法:我在C盘下建了一个名为yy.dat的文件,文件的内容为:
name=hehe
password=12345
执行以下程序,输出hehe,可见用Properties可以很方便的解析配置文件
Propertiesp=newProperties();
p.load(newFileInputStream(“C:yy.dat”));
System.out.println(p.getProperty(“name”))
五、两个工具类Arrays和Collections
1.Arrays、此类包含用来操作数组(比如排序和搜索)的各种方法。此类还包含一个允许将数组作为列表来查看的静态工厂
2.Collections、主要提供了在collection上进行操作的静态方法
六、遗留的几个类
1.Hashtable,作用和HashMap相同,不过它是线程安全的,如果不需要线程安全,应该使用HashMap
2.Enumeration,遗留集合使用枚举接口来遍历元素,它有两个方法,hasMoreElements和nextElement,用法类似Iterator。
3.Stack,继承自Vector,实现了栈的功能,提供了push()方法押栈和pop()方法出栈。
4.BitSet,位集。如果需要高效率的存储一个位序列,例如一个标志序列,请使用位集。它可以对各个位进行
读取get(i)
设置set(i)
清楚clear(i)
七、常见笔试题目汇总
1.Collection和Collections的区别。
Collection是集合类的上级接口,继承与他的接口主要有Set和List.
Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。
2.List,Set,Map是否继承自Collection接口?
List,Set是,Map不是
3.两个对象值相同(x.equals(y)==true),但却可有不同的hashcode,这句话对不对?
不对,有相同的hashcode。
4.你所知道的集合类都有哪些?主要方法?
最常用的集合类是List和Map。List的具体实现包括ArrayList和Vector,它们是可变大小的列表,比较适合构建、存储和操作任何类型对象的元素列表。List适用于按数值索引访问元素的情形。
Map提供了一个更通用的元素存储方法。Map集合类用于存储元素对(称作“键”和“值”),其中每个键映射到一个值。
5.排序都有哪几种方法?请列举。用JAVA实现一个快速排序。
排序的方法有:插入排序(直接插入排序、希尔排序),交换排序(冒泡排序、快速排序),选择排序(直接选择排序、堆排序),归并排序,分配排序(箱排序、基数排序)
快速排序的伪代码。
//使用快速排序方法对a[0:n-1]排序
从a[0:n-1]中选择一个元素作为middle,该元素为支点
把余下的元素分割为两段left和right,使得left中的元素都小于等于支点,而right中的元素都大于等于支点
递归地使用快速排序方法对left进行排序
递归地使用快速排序方法对right进行排序
所得结果为left+middle+right
6.HashMap和Hashtable的区别
都属于Map接口的类,实现了将惟一键映射到特定的值上。
HashMap类没有分类或者排序。它允许一个null键和多个null值。
Hashtable类似于HashMap,但是不允许null键和null值。它也比HashMap慢,因为它是同步的。
7.Set里的元素是不能重复的,那么用什么方法来区分重复与否呢?是用==还是equals()它们有何区别?
Set里的元素是不能重复的,那么用iterator()方法来区分重复与否。
equals()是判读两个Set是否相等。
equals()和==方法决定引用值是否指向同一对象equals()在类中被覆盖,为的是当两个分离的对象的内容和类型相配的话,返回真值。
篇11:java总结
java集合总结
java集合总结(一)
一、数组、集合
数组、集合:都是一种容器,用一个对象管理多个对象;
数组:不能自动增长;只能存放同类型的元素
集合:能自动扩容;部分集合允许存放不同类型的元素;
二、学习这些集合类要掌握哪些东西:
1)怎样得到(选择)集合对象;
2)怎样添加元素
3)怎样删除元素
4)怎样循环遍历没一个元素
三、list、set、map
collection:父接口;
Set:接口---一个实现类:HashSet
List:接口---三个实现类:LinkedList,Vector,ArrayList
SortedSet:接口---实现类:TreeSet
1、List:
List:有序列表,允许存放重复的元素;
实现类:
ArrayList:数组实现,查询快,增删慢,线程不安全,轻量级;下标也是从0开始;
LinkedList:链表实现,增删快,查询慢
Vector:数组实现,线程安全,重量级
2.Set:
无序集合,不允许存放重复的元素;
实现类HashSet:equals返回true,hashCode返回相同的整数;哈希表;
子接口SortedSet:对Set排序实现类:TreeSet:二叉树实现的;
看API:
Iterator:接口,迭代器;
java.util;
hasNext();
next();
remove();
Iterable:可迭代的,访问的;
ng;实现了可迭代的接口就可以用迭代的方式访问;
只需实现iterator();方法即可;Iteratoriterator();
三种循环的访问方式:
只有实现了Iterable接口的才能用第三种;能用第二种的也一定能用第三种;
ArrayList:自动扩容,是数组照搬过来的;
3.Map
HashMap:键值对,key不能重复,但是value可以重复;key的实现就是HashSet;value对应着放;
HashSet的后台有一个HashMap;初始化后台容量;只不过生成一个HashSet的话,系统只提供key的访问;
如果有两个Key重复,那么会覆盖之前的;
Hashtable:线程安全的
Properties:java.util.Properties;key和value都是String类型,用来读配置文件;
HashMap与Hashtable区别:
HashMap线程不安全的,允许null作为key或value;
Hashtable线程安全的,不允许null作为key或value;
TreeMap:对key排好序的Map;key就是TreeSet,value对应每个key;
key要实现Comparable接口或TreeMap有自己的构造器;
HashSet:remove(Objecto)的原则看这个对象O的Hashcode和equals是否相等,并不是看是不是一个对象;
定义一个Map;key是课程名称,value是Integer表示选课人数;
map.put(cou,map.get(cou)+newInteger(1));
四、Hashtable、Properties
1,Hashtable:实现了Map接口,此类实现一个哈希表,作用和HashMap相同。任何非null对象都可以用作键或值。为了成功地在哈希表中存储和获取对象,用作键的对象必须实现hashCode方法和equals法。
2,Properties:继承自Hashtable,比Hashtable更严格属性列表中每个键及其对应值都是一个字符串。
常用方法StringgetProperty(String?key)和setProperty(Stringkey,Stringvalue);
用法:我在C盘下建了一个名为yy.dat的文件,文件的内容为:
name=hehe
password=12345
执行以下程序,输出hehe,可见用Properties可以很方便的解析配置文件
Propertiesp=newProperties();
p.load(newFileInputStream(“C:\\yy.dat”));
System.out.println(p.getProperty(“name”))
五、两个工具类Arrays和Collections
1.Arrays、此类包含用来操作数组(比如排序和搜索)的各种方法。此类还包含一个允许将数组作为列表来查看的静态工厂
2.Collections、主要提供了在collection上进行操作的静态方法
六、遗留的几个类
1.Hashtable,作用和HashMap相同,不过它是线程安全的,如果不需要线程安全,应该使用HashMap
2.Enumeration,遗留集合使用枚举接口来遍历元素,它有两个方法,hasMoreElements和nextElement,用法类似Iterator。
3.Stack,继承自Vector,实现了栈的功能,提供了push()方法押栈和pop()方法出栈。
4.BitSet,位集。如果需要高效率的存储一个位序列,例如一个标志序列,请使用位集。它可以对各个位进行
读取get(i)
设置set(i)
清楚clear(i)
七、常见笔试题目汇总
1.Collection和Collections的区别。
Collection是集合类的上级接口,继承与他的接口主要有Set和List.
Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。
2.List,Set,Map是否继承自Collection接口?
List,Set是,Map不是
3.两个对象值相同(x.equals(y)==true),但却可有不同的hashcode,这句话对不对?
不对,有相同的hashcode。
4.你所知道的集合类都有哪些?主要方法?
最常用的集合类是List和Map。List的.具体实现包括ArrayList和Vector,它们是可变大小的列表,比较适合构建、存储和操作任何类型对象的元素列表。List适用于按数值索引访问元素的情形。
Map提供了一个更通用的元素存储方法。Map集合类用于存储元素对(称作“键”和“值”),其中每个键映射到一个值。
5.排序都有哪几种方法?请列举。用JAVA实现一个快速排序。
排序的方法有:插入排序(直接插入排序、希尔排序),交换排序(冒泡排序、快速排序),选择排序(直接选择排序、堆排序),归并排序,分配排序(箱排序、基数排序)
快速排序的伪代码。
//使用快速排序方法对a[0:n-1]排序
从a[0:n-1]中选择一个元素作为middle,该元素为支点
把余下的元素分割为两段left和right,使得left中的元素都小于等于支点,而right中的元素都大于等于支点
递归地使用快速排序方法对left进行排序
递归地使用快速排序方法对right进行排序
所得结果为left+middle+right
6.HashMap和Hashtable的区别
都属于Map接口的类,实现了将惟一键映射到特定的值上。
HashMap类没有分类或者排序。它允许一个null键和多个null值。
Hashtable类似于HashMap,但是不允许null键和null值。它也比HashMap慢,因为它是同步的。
7.Set里的元素是不能重复的,那么用什么方法来区分重复与否呢?是用==还是equals()它们有何区别?
Set里的元素是不能重复的,那么用iterator()方法来区分重复与否。
equals()是判读两个Set是否相等。
equals()和==方法决定引用值是否指向同一对象equals()在类中被覆盖,为的是当两个分离的对象的内容和类型相配的话,返回真值。
java集合总结(二)
java集合类主要负责保存、盛装其他数据,因此集合类也称容器类。java集合类分为:set、list、map、queue四大体系。其中set代表无序、不可重复的集合;list代表有序、可重复的集合。map代表具有映射关系的集合;queue代表队列集合。
java集合类主要由两个接口派生:Collection和Map,是集合框架的根接口。下面是其接口、子接口和实现类的继承树。
下面就一一介绍四大接口及其实现类。
Set接口。set集合不允许包含相同的元素。set判断两个对象是否相同是根据equals方法。如果两个对象用equals方法返回的是true,set不会接受这两个对象。
HashSet是set接口的典型实现,HashSet按hash算法来存储集合中的元素。因此具有很好的存储和查找性能。HashSet判断两个元素的标准是两个元素的equals方法比较相等,同时两个对象的hasCode()方法返回值也相等。HashSet可以保存null元素。
List集合代表一个有序集合。集合中的每个元素都有其对应的顺序索引。Arraylist和vector是list接口的两个典型实现。他们之间的显着区别就是:vector是线性安全的,而arraylist不是。它们两个都是基于数组实现的list类。List还有一个基于链表实现的LinkedList类。当插入、删除元素的速度非常快。这个类比较特殊,功能也特别多,即实现了List接口,也实现了Dueue接口(双向队列)。可以当成双向队列使用,也可以当成栈使用。
Queue用于模拟队列的数据结构。LinkedList和ArrayDueue是其两个比较常用的实现类。
Map用于保存具有映射关系的数据。Map接口有如下几个常用的实现类:HashMap、HashTable、TreeMap。TreeMap是基于红黑树对TreeMap中所有key进行排序。HashMap和HashTable主要区别有两点:1、Hashtable是线性安全的,因此性能差些。2、HashMap可以使用null作为key或者value。
集合类还提供了一个工具类Collections。主要用于查找、替换、同步控制、设置不可变集合。
上面是对java集合类的一般概述,下面就set、list、map三者之间的关系进行剖析。
Set与Map的关系。Map集合中所有key集中起来,就组成了一个set集合。所以Map集合提供Set
Map与List的关系。把Map的key-value分开来看,从另一个角度看,就可以把Map与List统一起来。
Map集合是一个关联数组,key可以组成Set集合,Map中的value可以重复,所以这些value可以组成一个List集合。但是需要注意的是,实质Map的values方法并未返回一个List集合。而是返回一个不存储元素的Collection集合,换一种角度来看对List集合,它也包含了两组值,其中一组就是虚拟的int类型的索引,另一组就是list集合元素,从这个意思上看,List就相当于所有key都是int型的Map。
下面讲解几个相似类之间的差异。
ArrayList和LinkedList。ArrayList是一种顺序存储的线性表,其底层是采用数组实现的,而LinkedList是链式存储的线性表。其本质就是一个双向链表。对于随机存储比较频繁的元素操作应选用ArrayList,对于经常需要增加、删除元素应该选用LinkedList。但总的来说ArrayList的总体性能还是优于LinkedList。
HashSet与HashMap的性能选项。主要有两个方面:容量和负载因子(尺寸/容量)。较低负载因子会增加查询数据的性能,但是会降低hash表所占的内存开销。较高负载因子则反之,一般对数据的查询比较频繁,所以一般情况下初始容量应该大一点,但也不能太大,否则浪费内存空间。
篇12:JAVA个人年终工作总结
1. 技术水平有待提高。自身的能力提高了,做事的效率也会高一些,不然,许多技术都是
现学现用。会浪费许多工作的时间,可能延迟项目进度。并且刚开始只考虑到如何实现,并未考虑到性能和一些设计层面上的问题。
2. 工作缺乏计划,未及时总结当天完成的任务及学到的新的知识。如果当天不制定计划,
可能会这件事做会,那件事做会,没有目的性,没有时间紧迫感,浪费许多时间,也不明确工作重点,造成事倍功半的效果。工作不及时总结,可能一段时间内不知道自己做了些什么,学到了些什么,自身能力到底提升了多少。
四、对今后工作的思考:
1. 制定详细的学习计划,系统学习一些专业的知识。工作更加细心、仔细,加强责任心,
不断提高自己分析问题和解决问题的能力。
2. 在数据库方面有所突破。
3. 多看源码,弄明白用到技术的原理,让自己软件开发的思想更全面一些。
4. 在工作中要及时向项目经理反应自己的工作情况,包括已完成的任务及工作中存在的问题,提高工作的主动性。
5. 注重团队合作,养成总结与反思的习惯,并有意识地提炼日常工作成果,整理成文档,
以便以后遇到类似问题能够很快解决问题。
篇13:java个人年终工作总结
一、考核期内主要业绩,工作创新、工作质量及成效:
1. .5.10 - 2011.7 :联通116114门户网站开发
完成116114网站首页登录及注册、公告模块、红段子短信发送、地区二级联动、及一些公共代码的实现,在这个项目中学习了新的知识Freemarker及Ibatis,熟悉了JQuery的使用,并对统一框架有了一定的了解。并在规定时间内完成了开发任务。
项目描述:
联通116114门户网站主要实现红段子的定制与包月。红段子内容包括短信和彩信。是由用户注册成为会员,自行在网上发布红段子,经审核后发布,再由个人用户到网站上包月或点播定制的一个业务。红段子门户网站建设目的,就是为了满足和实现红段子发布,定制流程
视频黄页个人定制:个人用户通过搜索引擎方式查询视频黄页,不注册也可以进行查询搜索,查询时用户可选择地区,行业,然后输入关键字进行搜索。搜索出结果后,个人用户可点击视频黄页,进行预览或定制或包月
2. 2011.7 - 2011.9.15:质检考评系统0502、0503、0504版本测试
这段时间主要熟悉质检系统的业务及需求,学习一些测试的基础知识,如单元测试、集成测试、压力测试、性能测试等,并能使用自动测试工具QTP进行一些重复的需要手动测试的功能,使用LoadRunner模拟多个用户实施并发负载及实时性能监测。熟悉web应用在websphere及weblogic服务器上的部署。在测试的这段时间,对质检系统的所有的功能都有了一定的了解,并发现了许多系统以前存在的问题,项目提交测试部之后,没有太多功能上的问题。 也为后期参与质检项目开发作好了准备。
但0504版本与其他版本依赖关系比较大,没有测试环境,许多功能没有测试,这个版本出现的问题比较多。 所以在以后工作中需要注意这些问题,及时向上级反馈工作中的问题。
3. 2011.9.15- 2011.11.15 :质检考评系统0505开发
主要负责计划考评(人工事后,自动事后,轮次)的相关需求、质检标准等功能的实现及其他需求的测试。 学习了struts1的相关知识,对质检系统业务有了进一步了解。这个版本的开发都在规定时间内完成了任务,版本质量也没有太大的问题。
4. 2011.11.16 - .1.10: 甘肃12580项目开发
主要完成彩信模块所有的功能的实现,主要用到了JQuery、DWR、IBATIS、SPRING、BOSS验证、UMA及Webservice等技术
5. 2012.1.11-2012.2质检项目0506开发及测试
二、自我评价(包括本人需要向上级汇报的其它方面内容):
1. 在这半年多的时间里,学习了很多新的知识,都是以前没有接触过的,可能刚工作的时
候有些浮躁,想有新的任务,又害怕做不好,但是最后都能如期的完成领导交付的任务,并学到新的技术,所以,事后会觉得没有什么是做不好的,只要自己动手去做,克服急躁情绪,积极、细致地的对待每一项任务。
2. 测试工作,刚做测试工作的时候,大家都不太愿意去做,一是觉得自己不会这技术 ,
二是觉得自己的初忠是搞开发这一块,刚出来就做测试,也没有什么经验,总觉得不合适,但做过一段时间后,我深刻感受到开发的做测试的一个好处(当然是没有接触项目前),根据项目需求,可以很快的熟悉项目的业务,不再局限于做开发的只熟悉某一个模块的功能,而不了解其他模块的实现。并且,在以后做开发的时候自己会考虑更全面一些,思维也拓展更开一些。
相关精彩文章推荐:
1.android程序员试用期个人工作总结
2.程序员试用期转正工作总结
3.程序员个人工作总结自我评价
4.程序员个人工作总结
5.java程序员年终总结
6.最新程序员试用期工作总结
7.程序员试用期个人总结3篇
篇14:java个人年终工作总结
3. 在工作中需要不断的学习,通过项目不断提高自己的各项技能,做到脚踏实地,不怕多
做事、做小事,在点滴实践中完善提高自己。
4. 在工作中可能会遇到一些纠结的小问题,自己可能花很多时间也解决不了,如果多问问
同事可能很快就可以解决问题,所以,不用爱面子,多向同事请教,但也不是有问题就问。
5. 这半年工作时间里,发现和解决问题的能力,个人的技术都有了很大的提高,在项目中
遇到问题,不会再像刚开始不知道从何下手,不知道如何去定位一个问题,而现在都能较快的处理在工作中遇到的问题。
三、工作中主要的问题和不足:
1. 技术水平有待提高。自身的能力提高了,做事的效率也会高一些,不然,许多技术都是
现学现用。会浪费许多工作的时间,可能延迟项目进度。并且刚开始只考虑到如何实现,并未考虑到性能和一些设计层面上的问题。
2. 工作缺乏计划,未及时总结当天完成的任务及学到的新的知识。如果当天不制定计划,
可能会这件事做会,那件事做会,没有目的性,没有时间紧迫感,浪费许多时间,也不明确工作重点,造成事倍功半的效果。工作不及时总结,可能一段时间内不知道自己做了些什么,学到了些什么,自身能力到底提升了多少。
四、对今后工作的思考:
1. 制定详细的学习计划,系统学习一些专业的知识。工作更加细心、仔细,加强责任心,
不断提高自己分析问题和解决问题的能力。
2. 在数据库方面有所突破。
3. 多看源码,弄明白用到技术的原理,让自己软件开发的思想更全面一些。
4. 在工作中要及时向项目经理反应自己的工作情况,包括已完成的任务及工作中存在的问题,提高工作的主动性。
5. 注重团队合作,养成总结与反思的习惯,并有意识地提炼日常工作成果,整理成文档,
以便以后遇到类似问题能够很快解决问题。
相关精彩文章推荐:
1.android程序员试用期个人工作总结
2.程序员试用期转正工作总结
3.程序员个人工作总结自我评价
4.2016程序员个人工作总结
5.java程序员年终总结
6.最新程序员试用期工作总结
7.程序员试用期个人总结3篇
8.程序员年终工作总结范文
9.程序员试用期工作总结
10.2016软件开发程序员年终工作总结
篇15:个人年度工作总结java
个人年度工作总结java
一、理论知识的学习
在实训进行的前五天,我们上的是java编程的理论课。负责上课的老师言语风趣幽默而不失严谨,在老师的引导和启发下,我们巩固了之前在学校所学的编程知识,并加以深化,澄清之前对编程技术认识的一些错误或模糊的概念。
我们还在课上以java里GUI编程常用的swing框架和JAVA的容器体系作为切入点,框架作为这期间除了学习一般的编程的知识技巧。在全面的系统的认识了框架同时补充学习了泛型技术,以及框架中架构思想的知识。在企业的实际编码过程中,一个个框架构成了软件的基石,只有掌握了几门框架知识,才能在实践中高效开发,让自己的产品在市场上立于不败之地。
在理论课的学习过程中,我们也暴露了一些问题,比如在学校上课学习时,对所学知识只是知其然而不知其所以然,不太愿意深钻,和超前学习一些知识。
二、项目开发实战练习
在结束了理论知识的学习之后,后五天我们在实训基地进行了项目开发的实战练习。
项目的名称是superVCD,是由海辉曾经所接的一个远程音乐唱片管理软件项目的精简版。虽然有所精简,但是其内容对我们学习仍具有相当的价值,对我们了解真实的软件的设计规范,编码规范,文档规范以及客户对软件的.需求很有参考价值。该内容囊括了GUI设计和编码,容器与泛型的知识,规范文档编写,测试及日志系统,甚至要求我们实现一个专用的轻量级数据库系统,这无疑是对我们很好的一次历练机会,同时可以积累丰富的知识。
平时我们很少有机会能够完成一个如此规模的项目,所以在这次项目实战训练中,我的收获也有很多。
第一,我学会了如何规范的编写代码和文档。文档和代码是团队各成员在项目开发交流合作中的纽带,风格随意混乱的代码和缺失或语义不明的文档会让团队中的其他成员不能理解和使用自己写的程序,我在平时编写代码比较随意,并不注重这一点,经历这次实战演练之后,我一定会严格的遵守编码规范。
第二,我学会了如何理解和分析客户的需求。软件为客户而生,只有理解了客户的需求才有写出优秀的软件的可能,在这次实战演练中,老师教会了我们如何组织团队正确的理解和分析客户的需求,并写出完善的需求分析,并用于项目开发。
第三,我学会了对按照需求对软件架构进行设计,这点我想是我们许多同学之前都非常欠缺的,因为我们在学校的时编写代码篇幅短小,功能单一,所以设计思路通常只留于脑内,非常模糊。而在这次项目开发演练中,老师手把手的教会我如何从需求中抽象出问题,并将之模块化,然后逐步求精,就如同为高楼大厦搭建栋梁。
第四,我学会了如何团队合作,共同开发。作为项目开发小组的组长,我的体会更加深刻。独木难支,光靠一个人的力量是远远不够的。只有管理组织好一个团队,才能够最终完成项目的开发,或许在编程技术水平上团队成员有高有低,但是,每个人都有自己的闪光点,总可以在团队的找到适合自己的位置,每个人在自己的团队中做的贡献,创造出不可磨灭的重大价值。
第五,我学会了如何与客户沟通并展示自己的项目,软件项目的开发最终需要的是客户的认可,让客户了解并认可自己的产品最好的办法就是用言语将自己的项目的最好的一面展示出来,在最后一天里,实训的老师组织了项目的答辩,给我们提供了锻炼自己的表达能力,展示自己的项目的舞台。
在实战的过程中,我对项目开发流程有了切实的体会:学会了如何编写规范合格的代码和文档;学会了了正确理解分析客户需求并设计项目的方法;体会到了团队合作精神的重要性,明白了组织团队进行项目开发的具体流程,还了解到了向客户展示产品以及与客户进行沟通的技巧。
经历过这次实习实训,我们不仅在编程的理论知识上有所巩固和深化,更重要的是有了实战进行项目开发锻炼动手能力的机会,积累了一笔宝贵的经验。实训虽已结束,但我们的不断学习的征途才刚刚迈出第一步。今后的路还很长,还有很多机会去实习提高,我们要以更加积极的姿态去充实自己,学习,不断地迎接挑战。
三、Java怎么选择项目
这个不是靠想象,而是根据实际的情况一步一步分析出来的(呵呵要卖弄一下:这也算是逻辑思维),当然这里只是讨论方法,不涉及具体的项目案例。
我们可以采用倒推的方式来分析:
(1)最终的项目一定是真实的项目,也就是要把学员训练到能够独立开发实际应用,通常我们还不能选最简单的项目,因为学员的吸收还要有一个折扣,所以最终的项目应该选实际项目中中等难度的项目
(2)最终项目定下来过后,开始分解这个项目,看看为了达到完成这个项目需要哪些技术和知识点,以及每部分知识点的深度,然后定出每个分阶段的任务
(3)然后开始选择分阶段的项目,分阶段的项目应该比刚才分析出来的分阶段任务稍稍复杂点,这样才能达到训练的目标。定下分阶段项目后,同样去分解,定出为了完成他所需要的各部分知识点和深度。
(4)然后是选择上课期间的演示项目,演示的项目是为了做分阶段项目服务的,可以认为是分阶段项目的分阶段项目
(5)最终把要求掌握的知识点和要求掌握的深度,分散到日常教学和练习中。
篇16:Java知识点总结
Java知识点总结
一:java概述:
1991 年Sun公司的James Gosling(詹姆斯·高斯林)等人开始开发名称为 Oak 的语言,希望用于控制嵌入在有线电视交换盒、PDA等的微处理器;
1994年将Oak语言更名为Java;
Java的三种技术架构:
JAVAEE:Java Platform Enterprise Edition,开发企业环境下的应用程序,主要针对web程序开发;
JAVASE:Java Platform Standard Edition,完成桌面应用程序的开发,是其它两者的基础;
JAVAME:Java Platform Micro Edition,开发电子消费产品和嵌入式设备,如手机中的程序;
1,JDK:Java Development Kit,java的开发和运行环境,java的开发工具和jre。
2,JRE:Java Runtime Environment,java程序的运行环境,java运行的所需的类库+JVM(java虚拟机)。
3,配置环境变量:让java jdk\bin目录下的工具,可以在任意目录下运行,原因是,将该工具所在目录告诉了系统,当使用该工具时,由系统帮我们去找指定的目录。
环境变量的配置:
1):永久配置方式:JAVA_HOME=%安装路径%\Java\jdk
path=%JAVA_HOME%\bin
2):临时配置方式:set path=%path%;C:\Program Files\Java\jdk\bin
特点:系统默认先去当前路径下找要执行的程序,如果没有,再去path中设置的路径下找。
classpath的配置:
1):永久配置方式:classpath=.;c:\;e:\
2):临时配置方式:set classpath=.;c:\;e:\
注意:在定义classpath环境变量时,需要注意的情况
如果没有定义环境变量classpath,java启动jvm后,会在当前目录下查找要运行的类文件;
如果指定了classpath,那么会在指定的目录下查找要运行的类文件。
还会在当前目录找吗?两种情况:
1):如果classpath的值结尾处有分号,在具体路径中没有找到运行的类,会默认在当前目录再找一次。
2):如果classpath的值结果出没有分号,在具体的路径中没有找到运行的类,不会再当前目录找。
一般不指定分号,如果没有在指定目录下找到要运行的类文件,就报错,这样可以调试程序。
4,javac命令和java命令做什么事情呢?
要知道java是分两部分的:一个是编译,一个是运行。
javac:负责的是编译的部分,当执行javac时,会启动java的编译器程序。对指定扩展名的.java文件进行编译。 生成了jvm可以识别的字节码文件。也就是class文件,也就是java的运行程序。
java:负责运行的部分.会启动jvm.加载运行时所需的类库,并对class文件进行执行.
一个文件要被执行,必须要有一个执行的起始点,这个起始点就是main函数.
二:java语法基础:
1,关键字:其实就是某种语言赋予了特殊含义的单词。
保留字:其实就是还没有赋予特殊含义,但是准备日后要使用过的单词。
2,标示符:其实就是在程序中自定义的名词。比如类名,变量名,函数名。包含 0-9、a-z、$、_ ;
注意:
1),数字不可以开头。
2),不可以使用关键字。
3,常量:是在程序中的不会变化的数据。
4,变量:其实就是内存中的一个存储空间,用于存储常量数据。
作用:方便于运算。因为有些数据不确定。所以确定该数据的名词和存储空间。
特点:变量空间可以重复使用。
什么时候定义变量?只要是数据不确定的时候,就定义变量。
变量空间的开辟需要什么要素呢?
1,这个空间要存储什么数据?数据类型。
2,这个空间叫什么名字啊?变量名称。
3,这个空间的第一次的数据是什么? 变量的初始化值。
变量的作用域和生存期:
变量的作用域:
作用域从变量定义的位置开始,到该变量所在的那对大括号结束;
生命周期:
变量从定义的位置开始就在内存中活了;
变量到达它所在的作用域的时候就在内存中消失了;
数据类型:
1):基本数据类型:byte、short、int、long、float、double、char、boolean
2):引用数据类型: 数组、类、接口。
级别从低到高为:byte,char,short(这三个平级)-->int-->float-->long-->double
自动类型转换:从低级别到高级别,系统自动转的;
强制类型转换:什么情况下使用?把一个高级别的数赋给一个别该数的级别低的变量;
运算符号:
1)、算术运算符。
+ - * / % %:任何整数模2不是0就是1,所以只要改变被模数就可以实现开关运算。
+:连接符。
++,--
2)、赋值运算符。
= += -= *= /= %=
3)、比较运算符。
特点:该运算符的特点是:运算完的结果,要么是true,要么是false。
4)、逻辑运算符。
& | ^ ! && ||
逻辑运算符除了 ! 外都是用于连接两个boolean类型表达式。
&: 只有两边都为true结果是true。否则就是false。
|:只要两边都为false结果是false,否则就是true
^:异或:和或有点不一样。
两边结果一样,就为false。
两边结果不一样,就为true.
& 和 &&区别: & :无论左边结果是什么,右边都参与运算。
&&:短路与,如果左边为false,那么右边不参数与运算。
| 和|| 区别:|:两边都运算。
||:短路或,如果左边为true,那么右边不参与运算。
5)、位运算符:用于操作二进制位的运算符。
& | ^
<< >>>>>(无符号右移)
练习:对两个变量的数据进行互换。不需要第三方变量。
int a = 3,b = 5;-->b = 3,a = 5;
a = a + b; a = 8;
b = a - b; b = 3;
a = a - b; a = 5;
a = a ^ b;//
b = a ^ b;//b = a ^ b ^ b = a
a = a ^ b;//a = a ^ b ^ a = b;
练习:高效的算出 2*8 = 2<<3;
5,语句。
If switch do while while for
这些语句什么时候用?
1)、当判断固定个数的值的时候,可以使用if,也可以使用switch。
但是建议使用switch,效率相对较高。
switch(变量){
case 值:要执行的语句;break;
…
default:要执行的语句;
}
工作原理:用小括号中的变量的值依次和case后面的值进行对比,和哪个case后面的值相同了
就执行哪个case后面的语句,如果没有相同的则执行default后面的语句;
细节:1):break是可以省略的,如果省略了就一直执行到遇到break为止;
2):switch 后面的小括号中的变量应该是byte,char,short,int四种类型中的一种;
3):default可以写在switch结构中的任意位置;如果将default语句放在了第一行,则不管expression与case中的value是否匹配,程序会从default开始执行直到第一个break出现。
2)、当判断数据范围,获取判断运算结果boolean类型时,需要使用if。
3)、当某些语句需要执行很多次时,就用循环结构。
while和for可以进行互换。
区别在于:如果需要定义变量控制循环次数。建议使用for。因为for循环完毕,变量在内存中释放。
break:作用于switch ,和循环语句,用于跳出,或者称为结束。
break语句单独存在时,下面不要定义其他语句,因为执行不到,编译会失败。当循环嵌套时,break只跳出当前所在循环。要跳出嵌套中的外部循环,只要给循环起名字即可,这个名字称之为标号。
continue:只作用于循环结构,继续循环用的。
作用:结束本次循环,继续下次循环。该语句单独存在时,下面不可以定义语句,执行不到。
6,函 数:为了提高代码的复用性,可以将其定义成一个单独的功能,该功能的体现就是java中的函数。函数就是体现之一。
java中的函数的定义格式:
修饰符 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数1,…){
执行语句;
return 返回值;
}
当函数没有具体的返回值时,返回的返回值类型用void关键字表示。
如果函数的返回值类型是void时,return语句可以省略不写的,系统会帮你自动加上。
return的作用:结束函数。结束功能。
如何定义一个函数?
函数其实就是一个功能,定义函数就是实现功能,通过两个明确来完成:
1)、明确该功能的运算完的结果,其实是在明确这个函数的返回值类型。
2)、在实现该功能的过程中是否有未知内容参与了运算,其实就是在明确这个函数的参数列表(参数类型&参数个数)。
函数的作用:
1)、用于定义功能。
2)、用于封装代码提高代码的复用性。
注意:函数中只能调用函数,不能定义函数。
主函数:
篇17:java试用期总结
我来公司已经近两个月了,在这两个月中,我随着对公司的逐步了解,更加坚定了我进公司前面试时候“找个能够长期发展的公司”的想法,我对公司的前景充满希望;通过两个月与同事的接触,我对他们的技术水平很佩服,因而对物流软件的前景也充满信心。
在此期间,我认真积极的工作,并且在同事的积极主动而又诚恳的帮助下完成了领导给我分配的工作。
1、熟悉了物流软件的业务流程,在将来的工作中我将更加明细的知道各个业务的具体功能和实现方法,更好的为公司服务。
2、完成了计费部分的需求分析,概要设计、数据库设计
3、完成了机器登录(主要功能:搜索整个局域网,用比较高效的方法能够快速的获取每台电脑的主机名、IP地址、网卡物理地址MAC,并且把他们应用的系统登录wxlogin的校验中去)、商品信息(主要功能:商品信息查看、一次录入、二次录入、修改、匹配、维护、历史商品信息查看、商品信息匹配列设置)、静态数据维护(主要功能:基础数据查看、录入、维护、设计全局函数,方便在数据窗口中把基础数据作为下拉子数据窗口调用)、版本查询的新增开发;跟罗宇宙翔一起完成了系统日志(修改日志窗口、修改保存日志的全局函数(fxsxlogsxerr),从而把以前的6个类似函数统一起来,并且把这个函数应用到部分窗口)。使自己对物流业务、文档书写、ORACLE存储过程、图形化界面、动态菜单有了进一步的认识。虽然整个项目组的人都在努力工作,但是项目进度比预期的推迟了一段时间,现在时间紧迫,我会更加努力工作,希望能尽自己能力帮助物流组按时完成项目1、尽早完成领导交给我的工作,完成之后主动向领导要工作2、写好说明便于阅读维护、写好工作日志便于领导掌握我的工作进度3、抽空看同事的设计档和程序,一方面提高自己,另一方面向同事提供建议,从而增强整个系统的质量。请领导和同事考核我、关怀我、团结我、激励我,共同为高效、高质量完成这个项目而努力。
篇18:java试用期总结
作为一个软件开发工程师,我有幸成为北京超图一员,应聘为公司的java软件工程师。入任职以来,在部门领导的带领下,自己感觉无论学习、技术、生活等方面都有很大的提升。
20xx年里我主要完成的工作有:
1.1工程部pda运维系统
我是4月末来到公司的,来到公司的初期主要是对工程部pda运维系统进行了解,并对pda以后可能用到的一些技术进行研究,而后对现有的项目进行修改。系统包括3个主要功能模块,一个次要模块,主要模块有工单管理、消息管理和系统升级。
工单管理的修改
系统升级可下载单个的文件,可同过一个文件升级
pda上线之前主要在有线的5个站点做实施工作,第一次做实施,以为只是简单的教用户怎么用就可以了,但是真正做起来才知道,针对不同的用户需要用不同的角度去讲解,特别是年龄大的,要多讲几遍才行。
pda上线以后工作主要集中在pda的维护和修改上,由于距离上次实施时间较长,所以又进行了一次实施。每个站点使用的时间不同,花费在每个站点上的维护和实施时间较长,在实施和维护期间每个站点都提出了不同的问题,针对不同的问题修改了很长时间,其中修改最多的模块主要集中于工单管理模块和系统升级模块。
系统在所有站点都开始使用以后主要针对站点提出的不同的问题进行解决和系统的改进,经过改进的系统很稳定,问题基本出现在
由于信号不好的原因导致升级失败,由于卡停机导致系统不能正常登录。还有几次是因为网络原因导致系统不能使用
1.2有线boos系统
pda运维项目稳定后主要做了些boos系统中的一些功能,数据库数据的批量转移,
百万条数据的批量的转移功能。
宽带系统的的咨询查询,根据用户地址和时间进行查询,修改宽带大客户atm资料查询功能boos系统网上营业厅缴费的遗漏查询网上营业厅二期产品卡消费修改了付费频道发票打印功能全网稽查中主工单的打印。
工作展望:
1、将学习的springsecurity整合到我们自己搭建的ssh框架,进一步完善框架。
2、利用搭建的ssh框架,开发一套oa系统平台。
3、做好襄樊、鄂州家政网络服务中心的维护工作。
4、希望公司能够大量拿下湖北省其他市的家政网络服务中心,继续开发和实施湖北省其他市的家政网络服务中心。
5、继续学习新技术,努力提高自己的个人能力。为以后能够更好,更顺利的工作奠定基础。
6、希望通过自己的进步和努力,能为公司的发展做出自己最大的贡献,体现出自己的最大价值。
★ java学习总结
★ java实习总结
★ java实训报告
【java个人总结(共18篇)】相关文章:
Java实习工作总结2022-08-09
java教学总结2022-12-01
java述职报告范文2022-08-29
暑期关于学习java实习报告2023-01-16
java年终总结2023-11-08
java毕业实习报告2022-05-02
java的实习报告2023-07-31
java毕业实习体会2022-08-21
java工作总结范文2022-08-09
java实习经验与总结建议2022-09-07