Java实习报告
Java实习报告总结

Java实习报告总结Java实习报告总结范文(精选9篇)Java实习报告总结篇1伴随着新年钟声的到来,我不知道我是否是应该高兴还是悲伤。
因为伴随自己三个月的华迪实训即将结束。
转眼之间三个月的华迪实训就这样在忙碌中过去了。
通过此次短暂的java开发习,回顾一下自己这三个月的每一天,觉得过的十分的充实,每天都有一堆忙不完的事。
因为你每天想起的第一件事情就是完成自己的项目模块,哪些地方不够,哪些需要修改。
渐渐的发觉,自己对自己所担任角色的认知:从原先的学生到现在“程序员”的转变。
“任何一个初具规模的软件都是要团队来配合的”这是我一向的认知。
因为你再全能程序员也有出纰漏的地方,你程序写的再好,那也只是你一个人的程序。
因为对于程序来说,可读性、可理解性是一项衡量它是否优秀的一个标准。
所以就有了我们6位成员的项目组。
在项目组中,我担任组员这一角色,这相当于一个正规项目的“项目开发人员”,感觉自己身上的担子挺重,因为要配合其他组员的进度并完成自己任务从而使得项目能够成功地,完整地把它应有的功能实现。
对于项目中遇到的困难,我觉得那就是经验不足,会遇到很多问题但也培养了我们上网搜索查询,咨询老师同学的良好习惯,让我相信任何困难都有被解决的一天。
所以从整个项目来说,自己在编码上遇到的太棘手的问题都是大家集体解决。
但是总的来说,这次课程设计对我很有帮助,让我获益匪浅,期间时间虽短但是也学到了不少的知识。
在这次实训过程中,我发现平时学习的知识与实践环节所用到的有一定的差距,往往我觉得自己掌握的很好或者自认为熟练的技术却在此次实践环节中往往出问题,书本上的知识只提供方法的借鉴,实践中自己必须摸索出适合具体工作的方法,这一切都离不开钻研精神与勤学好问的精神.总的来说,这次培训效果不错,对自己有一定的提升,这完全不同与学校的学习,因为它更加贴近工作,针对以后工作的内容作了很多实例的练习与工具的使用,为我们更快的加入工作提供的很好的前提。
Java实习报告范文5篇_Java实训报告总结

Java实习报告范文5篇Java实习报告范文5篇_Java实训报告总结Java是一种编程语言,如果想要在未来从事Java相关工作,就必须要掌握理论知识以及拥有强大的实操能力。
那么Java实习报告该如何写呢?小编精选了一些关于实习报告的优秀范例,一起来看看吧。
↓↓↓点击下方链接获取“Java”相关内容↓↓↓java的个人总结java实习心得总结Java开发工程师工作职责java实训实习心得java实习实训报告心得体会java实习报告1一、实习目的通过实习,培养综合运用Java语言的面向对象编程能力;培养动手能力;培养良好编程规范、编程方法;以便能较全面地理解、掌握和综合运用所学的知识,提高自身的编程能力;增强自己的团队协作意识,了解软件开发的思考角度和主要流程。
通过理论与实际的结合、学校与社会的沟通,进一步提高自己的思想觉悟、业务水平,尤其是观察、分析和解决问题的实际工作能力,以便培养自己成为能够主动适应社会主义现代化建设需要的高素质的复合型人才。
为毕业之后能够更快地进入工作状态并且能够更好的工作,打好一定的基础。
二、实习单位基本情况介绍神丰信息技术(延边)有限公司(简称“神丰信息”),是一家由日方注资,专注于面向中国丰田汽车的软件开发设计、受托日本神丰信息系统株式会社开展系统开发,系统维护、面向中国的日资企业开展系统开发,以及面向中国国内的软件开发设计的IT企业。
公司成立于2005年8月12日,注册资金RMB2,000,000元(神丰信息系统株式会社100%投资),2006年04月04日成为延边朝鲜族自治州信息产业协会会员;2006年05月25日成为吉林省软件输出联盟会员;2006年05月30日被认定为吉林省科技企业;2007年09月25日通过双软认定(软件企业认定、软件产品认定)。
神丰信息一直秉承软件提高效率、与社会共创信息化新时代的理念,致力于为用户提供具有自主知识产权的系统软件、安全软件、平台软件、各类应用软件以及全方位的解决方案和相关服务。
java系统社会实践报告5篇

java系统社会实践报告5篇java是一种可以撰写跨平台应用软件的面对对象的程序设计语言。
而学习Java的同学java实习实训是必经的过程。
下面就是我给大家带来的java系统社会实践报告5篇,盼望大家喜爱!java系统社会实践报告一面临毕业与就业的压力,不久将来就要从一个同学到一个社会人的转变:技术在不断的提高,思路在不断的开阔,思想在不断的升华,更重要的是自己的抱负和理想更加的坚决。
对于一个投身于IT的新人,阅历谈不上,一些学习的心得倒是可以拿出来探讨一下,我们该如何面临这个似曾相识的社会,突然一天如此接近。
面对“全球经济不景气”带来的就业压力,我们正在渐渐走向成熟,我们意志更加顽强,我们深知不经一番寒彻骨,哪来梅花扑鼻香。
深深地体会到找一份好工作多么不简单的,尤其是力量匮乏的我们。
一切都要付出行动,不能空想,要实现目标,就得不懈的努力。
的确,软件仍旧是一个朝阳行业,对于人才的需求量也很大,这也是为什么许多人努力走上这座独木桥的缘由。
但是当你面临人生的一个选择时,当你打算要踏上软件开发之路时,你应当问一下自己:我为什么要选择它?其实许多人在这条道路上摸爬滚打了多年也没弄清晰这个问题的答案。
假如你想在这条道路上有所成就的话,一是爱好使然,二是做好自己的职业规划。
软件开发其实是一条特别艰苦的路,不停的学习,不断的熬夜,没有鲜花更没有掌声,陪伴你的是那漫长而孤独的夜。
想一想我们预备好迎接这一切了吗?假如没有爱好我劝你还是放弃这条路,没有爱好你就在这条路上走不长,等待你的只有转行。
假如你真的把它作为你职业生涯的跳板,那么请你做好自己的人生规划,有步骤的实现它。
话题略微远了一点,现在我就谈谈自己在Java学习方面的心得和教训。
古人云:活到老,学到老。
读书学习实乃艰苦之事,花费时间,消耗精力。
然苦之外亦见其乐:得到了学问,提高了熟悉,完善了自己。
学习,求其真,务其实,应“敏而好学,不耻下问”,才能不断促使进步。
java实习报告模板(精选9篇)

java实习报告模板(精选9篇)java实习报告模板篇1毕业实习是学生大学学习阶段重要的实践性教学环节之一,通过实习学生将进一步了解社会,增强对社会主义现代化建设的责任感,使命感.实习期间,要求学生对企业(事业)单位的软件设计工作进行业务实践,使学生通过实习做到理论联系实际,充实和丰富所学的专业理论知识,培养发现问题,分析问题和解决问题的能力,为毕业后从事软件设计工作打下基础。
毕业实习有着它深刻的意义,也是大学生必经的体验,感谢学校能给我们提供机会,也感谢公司为我们提供条件。
Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaSE, JavaEE, JavaME)的总称。
Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
而我们现在学习Java是我们课程中的必修课程,更是找一份好工作的必备技能,虽然实习为期才一周,但是给我们增长很多见识,了解了大型软件开发的过程。
也学习了很多软件开发时一些技巧,更重要的是这次实习抛开了以前老师讲学生听的模式,这次老师边讲边带领我们编写程序,让我们能让学到的知识迅速巩固。
在中国软件专业人才培养工程(CSTP),北京智原教育基地。
为期5天的培训我们熟练掌握基于java的Android主流3G开发技术,能够独立完成从手机终端到服务器端完整开发方案。
使得能够掌握android相关领域基础知识,学会开发Android手机应用系统;掌握手机开发要点;培养基本的编程感觉。
在这5天时间里,我们学习了Android开发环境的搭建实现基于Android4.2 SDK的开发环境,理解DDMS等常用Android手机开发工具Android中Activity 的基本应用了解Activity对于手机UI界面的关系,实现项目的UI界面的设计,理解Android开发中的resource各种资源Android的常用组件熟悉Te_tView、EditTe_t、Spinner、ListView等常用组件,实现基本功能。
java实训报告总结与心得(优秀5篇)

java实训报告总结与心得(优秀5篇)java实训报告总结与心得篇1在这次Java实训中,我深入了解了Java编程语言及其面向对象编程的精髓。
通过本次实训,我收获颇丰,不仅加深了对Java语言的理解,也提高了自己的编程能力。
在实训过程中,我遇到了许多问题。
但通过仔细查阅资料和向老师请教,我得以一一解决。
这次实训使我对Java的特性,如封装、继承、多态等有了更深入的理解。
同时,我也熟悉了Java常用的类库和使用方法。
在未来的学习过程中,我将继续努力,争取在Java编程领域取得更大的进步。
我还会加强自己的解决问题的能力,不断提高自己的编程水平。
总之,这次实训对我来说是一次宝贵的经历。
它让我更深入地了解了Java 编程,也让我对自己的学习能力和解决问题的能力有了更大的信心。
java实训报告总结与心得篇2时间过得真快,转眼间,在厦门万策实训基地短短20天的实训生活已悄然过去几天了,然而实训的过程还历历在目。
实训期间,让我学到了很多东西,不仅使我在理论上对IT领域有了全新的认识,在实践能力上也得到了提高,真正地做到了学以致用,更学到了很多做人的道理,对我来说受益匪浅。
除此以外,我还学会了如何更好地与别人沟通,如何更好地去陈述自己的观点,如何说服别人认同自己的观点。
这一次亲身感受到理论与实际的相结合,让我大开眼界。
也是对以前所学知识的一个初审吧!这次实训对于我以后学习、找工作也真是受益匪浅,在短短的20天中相信这些宝贵的经验会成为我今后成功的重要的基石。
作为一名大三的学生,经过差不多三年的在校学习,对程序设计有了理性的认识和理解。
在校期间,一直忙于理论知识的学习,只能偶尔练习一些小程序,没有机会也没有相应的经验来参与项目的开发。
所以在实训之前,软件项目开发对我来说是比较抽象的,一个完整的项目要怎么来分工以及完成该项目所要的基本步骤也不明确。
而经过这次实训,让我明白一个完整项目的开发,必须由团队来分工合作,并在每个阶段中进行必要的总结与论证。
java实训报告范文(共10篇)

java 实训报告范文(共 10 篇)辽宁建筑职业学院《Java 高级应用》实训报告课题名称:婚庆公司网站专业:软件技术班级:xxxxxxxxxx学号:姓名:xxxx 指导教师:xxx二O 一三年十二月三十日成绩评定标准:目录一、课程设计目的 ................ .. (3)二、课程设计题目描述和要求 ...... .. (3)三、课程设计报告内容 ............ .. (4)设计方案的论证 .................. .. (4)设计概述 ........................ .. (4)设计步骤 ........................ .. (4)课程设计的模块及功能 .............. .. (4)开发环境......................... .. (8)四、程序流程图与功能结构图 ...... .. (9)五、结论............................ .. (10)六、心得体会 .................... .. (11)七、参考书目 .................... .. (12)八、附录 ........................ .. (13)一、课程设计目的专业能力目标1.掌握规划网站的内容结构,目录结构,链接结构的方法。
2.熟练掌握网页制作软件的基本操作,和使用技能。
3.掌握使用 JAVA 语言进行面向对象设计的基本方法,提高运用分析问题,解决问题的能力。
4.提高我们对 JAVABEN 组建的掌握和运用能力,让我们更熟练应用图像的界面。
5.掌握页面的整体控制和头部内容的设置方法。
6.熟练掌握动态网站相关组件的设计:servelet、javabean、jsp、过滤器等。
7.熟练建立各种形式的超链网站测试的方法。
通用能力目标1、合理安排自己的任务及时间,来完成本次课题。
java实训报告(7篇)

java实训报告java实训报告(7篇)随着社会一步步向前发展,报告的使用成为日常生活的常态,其在写作上有一定的技巧。
一听到写报告马上头昏脑涨?以下是小编收集整理的java实训报告,仅供参考,希望能够帮助到大家。
java实训报告1内蒙古商贸职业学院计算机系学生校内实验实训报告20 --20 学年第学期系部:计算机系课程名称:Java程序设计教程专业班级:内蒙古商贸职业学院计算机系制填写说明1、实验项目名称:要用最简练的语言反映实验的内容,要与实验指导书或课程标准中相一致。
2、实验类型:一般需要说明是验证型实验、设计型实验、创新型实验、综合型实验。
3、实验室:实验实训场所的名称;组别:实验分组参加人员所在的组号。
4、实验方案设计(步骤):实验项目的设计思路、步骤和方法等,这是实验报告极其重要的内容,概括整个实验过程。
对于操作型实验(验证型),要写明需要经过哪几个步骤来实现其操作。
对于设计型和综合型实验,在上述内容基础上还应该画出流程图和设计方法,再配以相应的文字说明。
对于创新型实验,还应注明其创新点、特色。
5、实验小结:对本次实验实训的心得体会、思考和建议等。
6、备注:分组实验中组内成员分工、任务以及其他说明事项。
注意:①实验实训分组完成的,每组提交一份报告即可,但必须说明人员分工及职责。
不分组要求全体成员独立完成的实验实训项目可由指导老师根据个人完成情况分组填写。
②实验成绩按照百分制记,根据教学大纲及课程考核要求具体区分独立计算、折算记入两种情况。
③本实验实训报告是根据计算机系实验的具体情况在学院教务处制的实验实训报告的基础上进行改制的。
特此说明。
成绩单组别:小组成员:篇二:实训总结实训收获总结报告学部:计算机信息学院学科门类:计算机信息类专业:计算机应用技术姓名:朱恩林学号:12310020020实习单位:北京盛威南凌信息科技有限公司指导教师:王洪钊实习时间:20xx年5月15号—9月23号一、实训目的计算机信息管理专业的java实训在教学计划中是实训、实习课程。
java毕业实习报告范文(通用5篇)

java毕业实习报告范文(通用5篇)实习报告范文一:尊敬的导员:您好!我是×××专业的一名大学生,在近期结束了为期三个月的实习。
我很荣幸有机会向您汇报我在实习中所取得的成果。
本次实习我选择进入一家软件公司,担任Java开发工程师的实习岗位。
在公司的三个月时间里,我参与了多个项目的开发,并且有幸参与了其中一个重要项目的核心开发工作。
首先,我在实习期间接触了大量的Java开发相关知识,并通过实际的项目经验加深了对Java语言的理解。
我熟练掌握了Java的基础语法、面向对象编程的思想以及常用的开发工具和框架。
同时,我还学习了Java的高级特性,包括多线程编程、网络编程、数据库操作等。
这些知识的学习使我在实践中更加得心应手。
其次,在实习期间我参与了一个名为“智能家居控制系统”的项目。
该项目要求我们设计并实现一个能够通过手机App控制家居设备的系统。
我负责该项目的核心模块开发,主要包括用户管理、设备管理、远程控制等功能。
我按照项目需求进行了系统设计,并且使用Java语言进行了编码工作。
最终,我成功地完成了项目并交付给了客户,获得了较好的用户评价。
最后,在实习期间我还发现了自己的不足之处,并积极采取了措施进行改进。
我深刻认识到了软件开发工作的复杂性和团队协作的重要性。
在项目开发中,我与团队成员密切合作,相互学习和交流,不断提高自己的技术水平和团队协作能力。
通过这次实习,我不仅提高了自己的专业技能,还增强了自己的团队协作和沟通能力。
我深感自己在未来的工作中仍需继续努力,不断学习和提升自己。
我相信,通过这次实习,我已经为将来的工作打下了坚实的基础。
最后,再次感谢您对我的指导和支持,在这次实习中我学到了很多宝贵的经验,也得到了锻炼和成长。
希望在未来的学习和工作中,我能够继续提高自己,为社会做出更多的贡献。
谢谢!此致敬礼×××。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
哈尔滨理工大学管理学院信息系实习报告班级信息13-4姓名赵军学号 **********2016年7月15日一、实习目的及意义进一步了解java开发的相关知识,掌握java开发的基本技术,丰富java开发的实战经验。
学习SQL的基础知识及正确的运用方法,和有用的相关技术,提高自己的工作效率。
通过实习,巩固大学所学专业的基本知识,提高分析、判断和处理实际问题的能力,锻炼自己的实际动手能力,增强自己的团队协作意识,了解软件开发的思考角度和主要流程。
为毕业之后能够更快地进入工作状态并且能够更好的工作,打好一定的基础。
二、实习任务实习期间,通过学习一个简单的Java程序——飞机大战,了解和掌握Java编程的基础,如构造器、API接口等。
最后可以独立完成一个小程序。
三、实习语言Java的特点Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用Java。
另一方面,Java丢弃了C++ 中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。
特别地,Java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。
2、Java语言是一个面向对象的Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。
Java语言全面支持动态绑定,而C++ 语言只对虚函数使用动态绑定。
总之,Java语言是一个纯的面向对象程序设计语言。
3、Java语言是分布式的Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、 ServerSocket等。
Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
4、Java语言是健壮的Java的强类型机制、异常处理、废料的自动收集等是Java程序健壮性的重要保证。
对指针的丢弃是Java的明智选择。
Java的安全检查机制使得Java更具健壮性。
5、Java语言是安全的Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。
除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵。
6、Java语言是体系结构中立的Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件), 然后可以在实现这个Java平台的任何系统中运行。
这种途径适合于异构的网络环境和软件的分发。
7、Java语言是可移植的这种可移植性来源于体系结构中立性,另外,Java还严格规定了各个基本数据类型的长度。
Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSI C实现的。
8、Java是高性能的与那些解释型的高级脚本语言相比,Java的确是高性能的。
事实上,Java的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C++。
9、Java语言是多线程的在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。
通常有两种方法来创建线程:其一,使用型构为Thread(Runnable) 的构造子将一个实现了Runnable接口的对象包装成一个线程,其二,从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。
值得注意的是Thread类已经实现了Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。
线程的活动由一组方法来控制。
Java语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为synchronized)。
10、Java语言是动态的Java语言的设计目标之一是适应于动态变化的环境。
Java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。
这也有利于软件的升级。
另外,Java 中的类有一个运行时刻的表示,能进行运行时刻的类型检查。
四、实习时间2016年7月12日——7月15日五、实习地点哈尔滨达内科技有限公司。
六、实习公司简介达内全称达内时代科技集团有限公司,是中国高端IT培训的领先品牌,致力于培养面向电信和金融领域的Java、C++、C#/.Net、软件测试、嵌入式、PHP、android等方面的中高端软件人才。
由于达内优秀的教学效果和行业领先的经营模式赢得了社会各界的广泛赞誉和好评,荣获了各界权威机构的颁奖:达内成为业界唯一的一家2006、2007、2008、2009连续4年入选德勤评选的“中国高科技高成长50强公司”、“亚太地区高科技高成长500强公司”,获得首届中国留学人才归国创业“腾飞”奖、中关村管理委员会指定的“软件人才培养示范基地”、被《计算机世界》评选的“就业服务杰出贡献奖”、被《中国计算机报》评选的“最具影响力培训机构奖”、被搜狐评为“中国十大教育集团”、被腾讯评为“中国大学生心目中最具影响力的IT品牌”。
七、实习成果部分代码展示:Games:import java.awt.event.KeyAdapter;import java.awt.event.KeyEvent;import javax.swing.JFrame;public class Games extends JFrame{World w = new World();public Games() {this.setSize(320, 480+30);this.setTitle("飞机大战");this.setLocationRelativeTo(null);this.setDefaultCloseOperation(EXIT_ON_CLOSE);this.setResizable(false);this.add(w);this.setVisible(true);Thread t = new Thread(w);t.start();this.addKeyListener(new KeyAdapter(){@Overridepublic void keyPressed(KeyEvent e) {switch(e.getKeyCode()){case KeyEvent.VK_LEFT:w.plane.left=true;break;case KeyEvent.VK_UP:w.plane.up=true;break;case KeyEvent.VK_RIGHT:w.plane.right=true;break;case KeyEvent.VK_DOWN:w.plane.down=true;break;}}@Overridepublic void keyReleased(KeyEvent e) {switch(e.getKeyCode()){case KeyEvent.VK_LEFT:w.plane.left=false;break;case KeyEvent.VK_UP:w.plane.up=false;break;case KeyEvent.VK_RIGHT:w.plane.right=false;break;case KeyEvent.VK_DOWN:w.plane.down=false;break;}}});}public static void main(String[] args) { Games games = new Games();}}World:import java.awt.Color;import java.awt.Font;import java.awt.Graphics;import java.awt.image.BufferedImage;import java.io.IOException;import java.util.Random;import java.util.Vector;import javax.imageio.ImageIO;import javax.swing.JPanel;public class World extends JPanel implements Runnable{Map map = new Map();//创建地图Plane plane = new Plane();Vector<Bullet> bullets = new Vector<Bullet>();int BulletCount = 0;int BulletStep = 8;Vector<Npc> npcs= new Vector<Npc>();int npcCount =0;int npcStep =50;Vector<NpcBullet> nbs = new Vector<NpcBullet>();//随机数Random r = new Random();public static int Score;public static final int START =0;public static final int RUNNING=1;public static final int GAME_OVER =2;public int status;BufferedImage start;BufferedImage game_over;public World() {try {start = ImageIO.read(getClass().getResource("imgs/start.png"));game_over = ImageIO.read(getClass().getResource("imgs/gameover.png"));} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}//初始状态status = RUNNING;}//绘制@Overridepublic void paint(Graphics g) {//绘制地图map.paint(g);g.setColor(Color.red);g.drawRect(200, 12, 100, 15);int value = 100-plane.hitcount*10;if(value<0){value = 0;}g.fillRect(200, 12, value, 15);//积分g.setColor(Color.white);Font f = new Font(Font.SANS_SERIF,Font.ITALIC|Font.BOLD,14);g.setFont(f);g.drawString(Score*100+"分", 10, 30);switch (status) {case START://绘制飞机plane.paint(g);g.drawImage(start, 160-start.getWidth()/2, 200, this);break;case RUNNING://绘制飞机plane.paint(g);for(int i =0;i<bullets.size();i++){bullets.get(i).paint(g);}for(int i =0;i<npcs.size();i++){npcs.get(i).paint(g);}for(int i =0;i<nbs.size();i++){nbs.get(i).paint(g);}break;case GAME_OVER:g.drawImage(game_over, 160-game_over.getWidth()/2, 200, this);break;default:break;}}//多线程@Overridepublic void run() {while(true){map.move();switch (status) {case START:break;case RUNNING:plane.move();addBullet();for(int i =0;i<bullets.size();i++){bullets.get(i).move(bullets,npcs);}addNpc();for(int i =0;i<npcs.size();i++){npcs.get(i).move(npcs,nbs,plane);}for(int i =0;i<nbs.size();i++){nbs.get(i).move(plane,nbs);}try {Thread.sleep(1000/60);} catch (InterruptedException e) {e.printStackTrace();}repaint();break;case GAME_OVER:break;default:break;}}}void addBullet(){BulletCount++;if(BulletCount % BulletStep==0){if(plane.level==1){Bullet b = new Bullet();b.x = plane.x+plane.w/2-b.w/2;b.y = plane.y-b.y;bullets.add(b);BulletCount = 0;}if(plane.level==2){Bullet b = new Bullet();b.x = plane.x+plane.w/2-b.w/2;b.y = plane.y-b.y;bullets.add(b);b = new Bullet();b.x = plane.x+plane.w/2-b.w/2+10;b.y = plane.y-b.y;bullets.add(b);BulletCount = 0;}if(plane.level==3){Bullet b = new Bullet();b.x = plane.x+plane.w/2-b.w/2;b.y = plane.y-b.y;bullets.add(b);b = new Bullet();b.x = plane.x+plane.w/2-b.w/2;b.y = plane.y-b.y;b.xstep-=1;bullets.add(b);b = new Bullet();b.x = plane.x+plane.w/2-b.w/2;b.y = plane.y-b.y;bullets.add(b);b.xstep+=1;BulletCount = 0;}if(plane.level==4){Bullet b = new Bullet();b.x = plane.x+plane.w/2-b.w/2-7;b.y = plane.y-b.y;bullets.add(b);b = new Bullet();b.x = plane.x+plane.w/2-b.w/2+7;b.y = plane.y-b.y;bullets.add(b);b = new Bullet();b.x = plane.x+plane.w/2-b.w/2-10;b.y = plane.y-b.y;b.xstep-=1;bullets.add(b);b = new Bullet();b.x = plane.x+plane.w/2-b.w/2+10;b.y = plane.y-b.y;b.xstep+=1;bullets.add(b);BulletCount = 0;}if(plane.level==5){Bullet b = new Bullet();b.x = plane.x+plane.w/2-b.w/2;b.y = plane.y-b.y;bullets.add(b);b = new Bullet();b.x = plane.x+plane.w/2-b.w/2-5;b.y = plane.y-b.y;b.xstep-=1;bullets.add(b);b = new Bullet();b.x = plane.x+plane.w/2-b.w/2+5;b.y = plane.y-b.y;b.xstep+=1;bullets.add(b);b = new Bullet();b.x = plane.x+plane.w/2-b.w/2-10;b.y = plane.y-b.y;b.xstep-=2;bullets.add(b);b = new Bullet();b.x = plane.x+plane.w/2-b.w/2+10;b.y = plane.y-b.y;b.xstep+=2;bullets.add(b);BulletCount = 0;}}}void addNpc(){npcCount++;if(npcCount % npcStep ==0){int type = r.nextInt(8);int direction = r.nextInt(3);for(int i =0;i<4;i++){Npc n = new Npc(type);switch (direction) {case 0:n.x = -n.w-(50*i);n.y = -n.h-(50*i);n.xstep=3;n.ystep=3;break;case 1:n.x = 320/2-(150+n.w)/2+(50*i);n.y = -n.h;n.ystep=3;break;case 2:n.x = 320+(50*i);n.y = -n.h-(50*i);n.xstep=-3;n.ystep=3;break;default:break;}npcs.add(n);}npcCount=0;}}}Map:import java.awt.Graphics;import java.awt.image.BufferedImage;import java.io.IOException;import javax.imageio.ImageIO;public class Map {int x;int y;BufferedImage img;// 构造器public Map() {x =0;y =0;try {img = ImageIO.read(getClass().getResource("imgs/bg.gif"));} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}// paint()public void paint(Graphics g){g.drawImage(img, x, y-img.getHeight(), null);g.drawImage(img, x, y, null);}// move()public void move(){y ++;if(y>img.getHeight())y=0;}}NPC:import java.awt.Graphics;import java.awt.Image;import java.awt.image.BufferedImage;import java.io.IOException;import java.util.Random;import java.util.Vector;import javax.imageio.ImageIO;public class Npc {int x;int y;int w;int h;int xstep=0;int ystep=5;BufferedImage img;BufferedImage[] imgs= new BufferedImage[4];int index=0;boolean hit =false;//击中boolean destroy=false;//销毁int hitCount =0;Random r = new Random();int randomNum;int time;public Npc(int type) {try {img = ImageIO.read(getClass().getResource("imgs/"+type+".png"));for(int i =0;i<imgs.length;i++){imgs[i]=ImageIO.read(getClass().getResource("imgs/bomb_"+i+".png"));}} catch (IOException e) {e.printStackTrace();}w = img.getWidth();h = img.getHeight();y = -h;randomNum = r.nextInt(50)+50;time = 0;}public void paint(Graphics g){if(destroy)return;g.drawImage(img, x, y, null);if(hit){img = imgs[index++];index =++hitCount/4%5;}if(index>=imgs.length){destroy = true;}}public void move(Vector<Npc> npcs,Vector<NpcBullet> nbs,Plane plane){ if(destroy){npcs.remove(this);World.Score++;return;}time++;if(time % randomNum==0){NpcBullet nb = new NpcBullet(this,plane);nbs.add(nb);time = 0;randomNum = r.nextInt(50)+50;}x+=xstep;y+=ystep;//飞行轨迹if(y>300){ystep=-1;xstep=-xstep;}if(y<-250){npcs.remove(this);}}}Plane:import java.awt.Graphics;import java.awt.image.BufferedImage;import java.io.IOException;import javax.imageio.ImageIO;public class Plane {int x;int y;int w;int h;BufferedImage [] imgs = new BufferedImage[3];BufferedImage img;boolean left,up,right,down;int index=0;int level=5;boolean hit = false;int hitcount=0;int flas = 0;public Plane() {try {for(int i =0;i<imgs.length;i++){imgs[i] = ImageIO.read(getClass().getResource("imgs/plane"+i+".png"));}} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}img = imgs[index];w = img.getWidth();h = img.getHeight();x =320/2-w/2;y =405;}public void paint(Graphics g){g.drawImage(img, x, y, null);if(hit){flas++;img = imgs[index = flas/3%2];if(flas>11){hit = false;flas=0;//index=0;}}}public void move(){if(left)x-=8;if(up)y-=8;if(right)x+=8;if(down)y+=8;if(x<0)x=0;if(y<0)y=0;if(x>320-w)x=320-w;if(y>480-h)y=480-h;}}Bullets:import java.awt.Graphics;import java.awt.image.BufferedImage;import java.io.IOException;import java.util.Vector;import javax.imageio.ImageIO;public class Bullet {int x;int y;int w;int h;int xstep=0;BufferedImage img;public Bullet() {try {img = ImageIO.read(getClass().getResource("imgs/bullet.png"));} catch (IOException e) {e.printStackTrace();}w = img.getWidth();h = img.getHeight();}public void paint(Graphics g){g.drawImage(img, x, y, null);}public void move(Vector<Bullet> bullets,Vector<Npc> npcs){y-=8;x+=xstep;if(y<-h){bullets.remove(this);}//子弹与敌机碰撞检测for(int i =0;i<npcs.size();i++){int x1 = npcs.get(i).x;int y1 = npcs.get(i).y;int w1 = npcs.get(i).w;int h1 = npcs.get(i).h;if(x>x1-w && x<x1+w1){if(y<y1+h1 && y>y1-h){//1.移除子弹bullets.remove(this);//2.npc被击中npcs.get(i).hit = true;}}}}}NpcBullet:import java.awt.Graphics;import java.awt.image.BufferedImage;import java.io.IOException;import java.util.Vector;import javax.imageio.ImageIO;import sun.java2d.pipe.DrawImage;public class NpcBullet {int x;int y;int w;int h;int step =5;double sin;double cos;BufferedImage img;public NpcBullet(Npc npc,Plane plane) {try {img=ImageIO.read(getClass().getResource("imgs/npcbullet.png"));} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}w = img.getWidth();h = img.getHeight();x = npc.x+npc.w/2-w/2;y = npc.y+npc.h;int x1 = plane.x+plane.w/2;int y1 = plane.y+plane.h/2;int dx = x1-x;int dy = y1-y;double dLine = Math.sqrt(dx*dx+dy*dy);cos = dx/dLine;sin = dy/dLine;}public void paint(Graphics g){g.drawImage(img, x, y, null);}public void move(Plane plane,Vector<NpcBullet> nbs){x = (int)(x+step*cos);y = (int)(y+step*sin);//碰撞检测int x1 = plane.x;int y1 = plane.y;int w1 = plane.w;int h1 = plane.h;if(x>x1-w && x<x1+w1){if(y>y1-h&& y<y1+h1){plane.hit = true;plane.hitcount++;nbs.remove(this);}}//边界判断if(x<-50||y<-50||x>370||y>550){nbs.remove(this);}}}八、实习心得初次涉及Java领域,感觉到Java入门是好像没有C,C++入门快,工具也没有什么Turbo C,Visual C++好用,什么JAVA_HOME,CLASSPATH,虚拟机等概念都是初次基础,旁边的人都很少用Java的。