2024年Java实训心得体会范文5篇
【请您参阅】下面供您参考的“2024年Java实训心得体会范文5篇”是由阿拉网友精心整理分享的,供您阅读参考之用,希望此例范文对您有所帮助,喜欢就复制下载支持一下小编了!
Java实训心得体会篇1
java编程实习心得体会
“纸上得来终觉浅,绝知此事要躬行。”在短暂的实习过程中,我深深的感觉到自己所学知识的肤浅和在实际运用中的专业知识的匮乏。刚开始的一段时间里,对一些工作感到无从下手,茫然不培训班学习心得体会知所措,这让我感到非常的难过。在学校总以为自己学的不错,一旦接触到实际,才发现自己得能力是远远没有达到工作的要求的,实际的工作远比想象中的要细致得多复杂得多,这时才真正领悟到“活到老学到老”的含义。实际的工作能力是书本实习心得体会范文上没有办法教授给大家的,必须要通过实际工作来积累与强化。来公司实习已两个个多月了,在这段时间里,我主要学习java编程,下面主要谈谈学习的经验以及心得体会。
在编程过程中遇到了较多的问题,解决问题的过程是漫长而艰苦的,然而在问题得到解决的一刹那是很快乐的。在此与大家分享下:
一、前期规划:
我理解的前期规划是:在市场人员们汇总一个需求提交给产品专家带领的产品经理团队,然后经过这个团队根据公司具体情况再次分析和规划出一个最终需求文档。
这个需求文档应当首先提交给技术研发部门的负责人以及核心开发人员。由开发团队对其进行技术和风险分析。如果对此需求统一有异议的地方,需要返回给产品团队,重新修正需求。反复如此,直至需求完善准确,细致,清晰。
前期规划就像高楼的地基,如果马马虎虎,就算是一块砖块没摆好都可能导致整个高楼建设的失败。在规划中我认为,交流永远是需要双方积极主动,能认真听取每个人的建议。前期工作思维不慎重,不细致,不认真,不够完善,将产生连锁效应直接导致整个工程和项目的失败。
这种失败可能表现为:第一种,软件按需求实现但是功能根本不能满足用户需要。第二种,功能都有了,软件没有达到可用性、易用性。
对于第一种,当然是因为前期规划疏漏了某些细小功能,没能把需求文档做完善。应该是规划工作做的还不够认真和细致。
对于第二种情况,我认为更多是在产品设计规划方面经验还不够成熟。这种问题应该是很难避免的。因为每种新产品对产品团队来说都很陌生。即使以前做过类似的东西,也难免面面俱到。这只能通过不断努力和认真的态度来弥补。
前期规划的交流涉及了市场、产品和技术研发等多个团队之间。需要的不仅是团队内部的交流,更多需要协调好团队之间的交流。可能有时候需要公司高层和中层参与协调。
目前,很多开发人员深感项目的需求文档写的都很单薄。大家可以想一想,如果没有好的开始,怎么会有好的结束呢?需求文档单薄,不够细致,由谁来继续完善呢?难道让程序员们自己去完善。我想程序员也可能没有这种能力。对于程序员能把代码写的很健壮很稳定就已经是很不容易的事情了。
二、概要设计:
我理解的概要设计步骤:(以项目为中心的开发流程)
1〉 项目经理仔细阅读项目需求文档。
2〉 项目经理召集项目开发成员,开项目启动会议。具体商议项目的开发任务和责任分配。
3〉 核心开发人员开发确定,以及各模块开发人员确定。4〉 由系统分析员和核心开发人员仔细阅读需求文档,对系统整个架构分析和做技术规划。
5〉 系统分析员整理和书写最终的系统架构和概要设计文档。
6〉 系统分析员在文档提交日,提交给项目经理。项目经理确认文档并审批。
7〉 项目经理召集项目开发成员,开一个概要设计以及系统架构确定的会议。向每个成员分发文档,并讨论确定最终概要设计文档。
8〉开始详细设计文档的工作
三、详细设计:
1〉项目经理组织成立各个模块的开发小组,并确定开发小组组长(程序经理)。
2〉各开发组长书写各自模块的详细设计文档,开发成员需要协助,配合。
3〉在指定提交日,开发组长提交文档给系统分析员。由系统分析员审批。
4〉系统分析员组织召开一个详细设计文档确认的会议。
5〉然后开发组长分发各自模块的详细设计文档给程序员,程序员在指定时间
内完成。
6〉程序员做内部测试。开发组长协调并配合。
7〉确认无bug提交给开发组组长。
8〉所有模块整合工作,由整个开发组成员参与完成。
由所有开发组长和系统分析员负责主要部分工作。程序员协助和配合。
9〉对整合后工程做详细测试。
10〉确认测试通过后,开发组长根据开发成员表现以及提交成果
填写绩效考核表。然后提交给项目经理。
11项目经理会召开项目总结会,同时向优秀成员颁奖。同时鼓
励所有成员继续努力。对不能按时完成导致项目能按时提交,以及对导致失败的 关键人员给与惩罚处理。
当然,以上只是一个简单的开发流程,一定是有很多不足的地方。希望能起到抛砖引玉的作用。大家都明白,流程和制度是死的,但人是活的,所以如何按流程做得好,关键还是在人本身了。没有一个流程和制度,一个团队也必将是一盘散沙。正所谓“无规矩无以成方圆”。这句话说得很有道理。
四、具体编码:
开发几个项目之后,对编写程序有了更进一步的了解。
好的程序应该具有:
易读性,易扩展性,容错性。易读性: 所有变量和函数以及类名用简单易懂易记忆的命名方式。所有类和
函数甚至变量都有关键的注释说明。
这点很重要,也是最基础的。如果代码书写
不够美观和易懂,我想自己以后也不想再看。
就更别谈功能的扩展和新版本开发了。
易扩展性: 整体系统架构逻辑简单清晰。
模块与模块之间尽量做到互不影响,也就是尽可能的独立。这部分工作主要体现在前期设计工作中,需要掌握好的设计经验和方法才能够做得比较好。
容错性: 对数据流和指针以及数组都做数据有效性检查;对第三方接口的调
用失败的容错性。对所有代码都做调用失败后的错误处理。
以及在大的工程中加入trace文件输出,把关键的数据流和关键处理部分的操作信息输出。
以便对工程异常情况产生条件的定位,及时解决问题。
我觉得程序员能在这三方面做得很好就算一个优秀的programmer了。
四、调试、跟踪与测试 测试需要注意的:
对每个模块的接口做测试,数据边界的检查。在对整个模块做测试。主要测试稳定性,效率以及功能是否正常。确认单个模块完全正常后,再加入工程。
在系统架构设计的时候,可能会引入原型参考。要对原型做完成测试后,确认没有问题后,才可使用。
五、收获与体会:
在鼎慧大数据公司的实习结束了,看着自己亲手写出来的几个案例,内心非常激动,整个实习过程充满浓厚的学习氛围。在这里,我对java的认识与理解上升了一个档次,当初对java只是一知半解,而在这里学习了一段时间后,发现自己对java还是很感兴趣的。课堂上老师认真地讲解各个方面的知识,每一个知识点都会讲解地非常清楚,让我们理解透彻,并且会加以程序联系,让我们充分地吸收一天所学的知识。实习从开始的紧张畏惧到后来的喜欢习惯,在这里留下的记忆是深刻的、收获是丰盛的、汗水是晶莹的。
通过这次实习,此次实习过程中的收获主要有四个方面:一是通过直接参与企业的运作过程,学到了实践知识,同时进一步加深了对理论知识的理解,使理论与实践知识都有所提高,圆满地完成了此次实习的实践任务。二是提高了实际工作能力,为就业和将来的工作取得了一些宝贵的实践经验。三是在实习过程中成立一个小组,彼此之间互相沟通,互相帮助,为了达成共同的目标而努力,让我看到了大家对于工作的热情,还有每个人的工作能力。四是为毕业论文积累了素材和资料。
于是,在未来的日子,我将做到以下几点:
1、继续学习,不断提升理论涵养
在信息时代,学习是不断地汲取新信息,获得事业进步的动力。认真学习java,使自己具有更好的专业知识,为以后就业做准备。作为一名青年学子更应该把学习作为保持工作积极性的重要途径,不断努力,不断进步。
2、努力实践,自觉进行角色转化
理论是灰色的,生活之树常青,只有将理论付诸于实践才能实现理论自身的价值,也只有将理论付诸于实践才能使理论得以检验。同样,一个人的价值也是通过实践活动来实现的,也只有通过实践才能锻炼人的品质,彰现人的意志。
从学校走向社会,首要面临的问题便是角色转换的问题。从一个学生转化为一个单位人,在思想的层面上,必须认识到二者的社会角色之间存在着较大的差异。学生时代只是单纯的学习知识,而社会实践则意味着继续学习,并将知识应用于实践,学生时代可以自己选择交往的对象,而社会人则更多地被他人所选择。诸此种种的差异。不胜枚举。但仅仅在思想的层面上认识到这一点还是不够的,而是必须在实际的工作和生活中潜心体会,并自觉的进行这种角色的转换。
3、提高学习积极性和主动性
实习,是开端也是结束。展现在自己面前的是一片任自己驰骋的沃土,也分明感受到了沉甸甸的责任。在今后的学习和生活中,我将继续努力学习,深入实践,不断提升自我,努力创造成绩,继续创造更多的人生价值。
4、要培养自己的团结合作精神
工作学习生活中,团结合作,是必须的。项目经理说过,一个完整的程序不是由一个人完成的,而是由一个团队完成的,每个人完成一部分的模块,然后整合起来才是完美的程序。所以在项目中,每个人都是力量必要的。因此,培养自己的团结合作能力,是以后的工作的必要准备。
本文地址:http:///zuowen/
Java实训心得体会篇2
java实训心得
在本学期的二周时间内,我们在学校机房进行了为期二周的java实训。现在即将结束了,回首本学期的java学习,重点还是在学习概念等一些常识性的东西,也学到平常在课堂中没有学到的东西,在java api中又多认识了几种类,使我对java产生了浓厚的兴趣。两周的时间说长也不长,在这两周中,我们的实训任务是仓库管理系统,在演示过程中,并没有觉得它有很难,但在实际编程过程中,却遇到了各种各样的错误,这也多亏了老师的指点和班级同学的帮忙,使我一步步克服了实训过程中遇到的困难。虽然我所做的系统并没有实现所有功能,但是我觉得自己进步了,很多原来都不懂的东西现在都已经了解了,也培养了我的团队合作精神,让我感受到了集体的温暖。实训的过程与课堂上的讲课比,更为有趣,因为可以真正的自己动手操作,使我对老师上课所讲的内容有了更深一步的了解,使我在以后的编程中可以灵活运用。我期待以后有更多类似的实训,使我们可以多掌握一项技能,也可以让我们在以后找工作中可以有更多的实践经验。学知识可不能凭自己的爱好和一时兴趣,要一步一个脚印,认认真真,踏踏实实,理论与实践相结合,在扎实掌握课本实例和内容之后,有一定的扩展阅读和课外学习,充分全面的了解java的应用和扩展运用。
在我所学的语言当中,我自认为java是一门比较强大的面向对象的编程语言,不仅仅因为它的跨平台性,更多的是因为它的灵活多变
和实用性较强,可以说比较的经典和强悍。所以学好java语言有很大的用处,这次实训,我们更多学到的是不懂就问和自己应该尽自己的全力去尝试,哪怕失败,只要自己尽自己的全力,和身边同学一起探讨而不是抄袭,团结合作,发挥团队意识,最后在自己的努力下,终于运行成功,这种成就感美不可言,心情愉悦至极。
最后终于要结束了,大家都有种释怀的感觉,当然我想我更多的是兴奋和自己掌握了知识之后的饱满感,学知识就像吃东西一样,吃饱了就应该好好的消化。要不断的温习和运用,做到举一反三,将所学知识充分融入到平时的学习生活中去,为以后的工作做好坚实的基础。感谢学校和老师能够为我们提供这次机会,让我们更好的掌握和了解java这门语言。
2013/1/4篇2:java实训心得
心得体会
此次只实训了短短的三周。虽说时间很短,但其中的每一天都使我收获很大、受益匪浅,它不但极大地加深了我对一些理论知识的理解,不仅使我在理论上对java有了全新的认识,在实践能力上也得到了提高,真正地做到了学以致用,更学到了很多做人的道理,对我来说受益非浅。除此以外,我知道了什么叫团队,怎样和团队分工合作;同时我还学会了如何更好地与别人沟通,如何更好地去陈述自己的观点,如何说服别人认同自己的观点。这也是第一次让我亲身感受到理论与实际的相结合,让我大开眼界。也是对以前所学知识的一个初审吧!这次实训对于我以后学习、找工作也是受益菲浅的,在短短的三周中相信这些宝贵的经验会成为我今后成功的重要的基石;这对于我的学业,乃至我以后人生的影响无疑是极其深远的。
这次实训虽然是我们的第一次,不过同学们表现不错,由此看来,我们在进入大学的这几个月里学到了不少的专业知识,只是自己感觉不到而已。对于所学专业,我们不能过于自卑和担忧,否则会妨碍自己学习。实训是学习java的重要环节,有利于我们巩固专业知识、掌握工作技能,提高就业筹码。
我把本次为期三周的实训看作是 “理论与实践相结合的桥梁”。通过这周的实训和学习,我知道了此次实训的目的,也清楚目前自己的不足,那就是缺乏相应的知识与经验,对所学的专业知识不能够很好地运用于实践操作。正所谓“百闻不如一见”,经过这次自身的切身实践,我才深切地理会到了“走出课堂,投身实践”的必要性。平时,我们只能在课堂上与老师一起纸上谈兵,思维的认识基本上只是局限于课本的范围之内,也许就是这个原因就导致我们对专业知识认识的片面性,使得我们只知所以然,而不知其之所以然!限制了我们网络知识水平的提高。但是课本上所学到的理论知识是为我们的实际操作指明了方向、提供相应的方法,真正的职业技巧是要我们从以后的实际工作中慢慢汲取的。而针对实际操作中遇到的一些特殊的问题,我们不能拘泥于课本,不可纯粹地“以本为本”。
在这次实训中我得到了许多收获,我第一次体会到java工程师的工作是什么样子的,也发现了很多不曾注意到的细节,在实训的演示过程中,我对作为一名java工程师注意的事项应该从小事做起、从基本做起。把职业能力训练与职业素质有机的结合起来。相信这对我接下来学习专业知识会起到很有效的帮助,在接下来的几个月里,我会以作为一名职业人的身份在这几个方面要求自己,严格自我,向java工程师靠近。
而经过这次实训,让我明白如果是一个完整项目的开发,必须由团队来分工合作,否则,即费力又费时还做不好这个项目。因此不管在工作中还是在生活中要和老师、同学保持良好的关系是很重要的。做事首先要学做人,要明白做人的道理,如何与人相处是现代社会的做人的一个最基本的问题。对于自己这样一个即将步入社会的人来说,需要学习的东西很多,他们就是最好的老师,正所谓“三人行,必有我师”,我们可以向他们学习很多知识、道理。
实训结束了感觉虽然辛苦,但很充实。我想这就是java工程师的工作。我也体会到java 工程师成功地完成一个任务的那种兴奋,那种小有成就的感觉是只有置身其中的人才能体会的。
总之,这次实训为我提供了与众不同的学习方法和学习体会,从书本中面对现实,为我将来走上社会打下了扎实的基础。作为在校计算机专业的学生,现在我能做的就是吸取知识,提高自身的综合素质,提高自己的职业技能,自己有了能力,到时候才会是 “车到山前必有路”。我相信在不久的未来,会有属于我自己的一片天空。
我希望计算机专业的同学在以后的学习或工作中以务实的态度给提供更多的机会锻炼自己,为大家的成才与就业奠定坚实的基础;并希望同学们要做好角色定位,将自己所学的知识,学熟、学精。
java实训心得
经过四个周的java项目实训,感触很深,收获也很大,对自己的缺点也有了很多的认识,回首本学期java学习,重点还是在学习概念等一些常识性的东西,关于类型、变量、接口、输入输出流、分析异常、抛出异常,后期主要是小程序运用,gui界面设计和事件。
在我学习的语言中,我自己认为java是一门比较强大的面向对象的编程语言,不仅仅是因为它的跨平台型还有它的较强的实用性,强悍的嵌入性。
本次实训主要是针对我们对项目流程不熟悉和对整体项目的把握不清楚,学习数据库的设计和表的建设以及表与表之间的联系,还有一些代码的编写,这些都是我们所不熟悉的也是我们最薄弱的部分。
通过这四个周的实训,虽然实训的时间不长,但是总体上收获挺大的,当我们正式准备学习实训java实现学生信息管理系统,让我对自己所学的知识做一个评估,java一直学的是课本知识,所以实训对于我来说是必须要学会熟练操作的。当然开始学习后也并非是想象中那样顺利,开始的学习让我异常感到学习任务的艰巨,因为学习中我遇到了很多以前未曾遇到的难点,有时后也难免会失去耐心,但是,通
过老师的指导,自己的努力的练习,我顺利的化解了一道道的障碍。克服了java学习上的一道道难关,现在自己已经基本掌握了java的基础知识。
有些知识点以前没有学过,但我也没有去研究,实训时突然间觉得自己真的有点无知,虽然现在去看依然可以解决问题,但要浪费许多时间,这一点是我必须在以后的学习中加以改进的地方,同时也要督促自己在学习的过程中不断的完善自我。另外一点,也是在实训中必不可少的部分,就是同学之间的互相帮助。所谓”当局者迷,旁观者清”,有些东西感觉自己做的是时候明明没什么错误,偏偏程序运行时就是有错误,让其他同学帮忙看了一下,发现其实是个很小的错误。所以说,相互帮助是很重要的一点,这在以后的工作或生活中也是很关键的。俗话说:“要想为事业多添一把火,自己就得多添一捆材”。此次实训,我深深体会到了积累知识的重要性。在实训当中我们遇到了不少难题,但是经过我们大家的讨论和老师细心的一一指导,问题得到了解决。两个月的实训结束了,收获颇丰,同时也更深刻的认识到要做一个合格的程序员并非我以前想像的那么容易,最重要的还是细致严谨。社会是不会要一个一无是处的人的,所以我们要更多更快地从一个学生向工作者转变,总的来说我对这次实习还是比较满意的,它使我学到了很多东西,为我以后的学习做了引导,点明了方向。
这次实训,我们更多学到的是不懂就要问和自己应该尽自己的全力去尝试,哪怕失败,也要尽自己的全力,和身边的同学一起探讨而不是抄袭,团队合作和发挥团队意识,最后在自己的努力下终于运行成功,这种感觉美不可言,心情愉悦至极,有很强的成就感。
最后,我自己感觉这次实训的收获还是很大的,我相信在不久的将来我们会有自己的一片天空。
Java实训心得体会篇3
in the following code, which is the earliest statement, where the object originally held in e, may be garbage collected:
class test {
static void main(string args []){
ee e = new employee(“bob”, 48);
atepay();
n(etails());
= null;
= new employee(“denise”, 36);
atepay();
n(etails());
10.}
11.}
only one:
in the following code, which is the earliest statement, where the object originally held in e, may be garbage collected:
class test {
static void main(string args []){
ee e = new employee(“bob”, 48);
atepay();
n(etails());
= null;
= new employee(“denise”, 36);
atepay();
n(etails());
10.}
11.}
only one:
10
11
7
8
2:exhibit :
class test(e static int j = 0;
e static boolean methodb(int k)( += k;
true;
6.)
static void methoda(int i){
n b:
= i < 10 | methodb(4);
= i < 10 || methodb(8);
12.)
static void main(string args[] }(a(0);
n(j);
17.)
18.)
what is the result?
program prints “0”
program prints “4”
program prints “8”
program prints “12”
3:what is written to the standard output given the following statement:n(4|7);
select the right answer:
4:
select valid identifier of java:
select valid identifier of java:
a.%passwd
_game
c.$charge
5:设有变量说明语句int a=1,b=0;
则执行以下程序段的输出结果为()。
switch(a)
{
case 1:
switch(b)
{
case 0:printf(“**0**”);break;
case 1:printf(“**1**”);break;
}
case 2:printf(“**2**”);break;
}
printf(“ ”);
a.**0**
b.**0****2**
c.**0****1****2**
d.有语法错误
6:in the following pieces of code, which one will compile without any error?
buffer sb1 = “abcd”;
n b = new boolean(“abcd”);
: byte b = 255;
fl = ;
7:
what is the result when you compile and run the following code?
public class throwsdemo
{
static void throwmethod()
{
n(“inside throwmethod.”);
throw new illegalaccessexception(“demo”);
}
public static void main(string args[])
{
try
{
throwmethod();
}
catch(illegalaccessexception e)
{
n(“caught ” + e);
}
}
}
choices:
what is the result when you compile and run the following code?
public class throwsdemo
{
static void throwmethod()
{
n(“inside throwmethod.”);
throw new illegalaccessexception(“demo”);
}
public static void main(string args[])
{
try
{
throwmethod();
}
catch(illegalaccessexception e)
{
n(“caught ” + e);
}
}
}
choices:
ation error
e error
e successfully, nothing is ed by caught:laccessexcption: demo
8:which of the following statements are not legal?
l = 4990;
i = 4l;
d = ;
t = :
give the following java class:
public class example{
public static void main(string args[]){
static int x[] = new int[15];
n(x[5]);
}
}
which statement is corrected?
give the following java class:
public class example{
public static void main(string args[]){
static int x[] = new int[15];
n(x[5]);
}
}
which statement is corrected?
compile, some error will run, some error will is is :下面关于变量及其范围的陈述哪些是错的。
a.实例变量是类的成员变量。
b.实例变量用关键字static声明。
c.在方法中定义的局部变量在该方法被执行时创建
d.局部变量在使用前必须被初始化。
11:
public class x{
public object m(){
object o = new float();//line 3
object [] oa = new object[1];//line 4
oa[0] = o;//line 5
o=null;//line 6
return oa[0];//line 7
}
}
when is the float object, created in line 3,eligible for garbage collection?
public class x{
public object m(){
object o = new float();//line 3
object [] oa = new object[1];//line 4
oa[0] = o;//line 5
o=null;//line 6
return oa[0];//line 7
}
}
when is the float object, created in line 3,eligible for garbage collection?
after line after line 6
after line 7(that is,as the method returns)
in this method
12:
which is the most appropriate code snippet that can be inserted at line 18 in the following code?
(assume that the code is compiled and run with assertions enabled)
.*;
class asserttest
4.{
e hashmap cctld;
asserttest()
8.{
= new hashmap();
(“in”, “india”);
(“uk”, “united kingdom”);
(“au”, “australia”);
13.// more code...14.}
15.// other methods.... string getcountry(string countrycode)
17.{
18.// what should be inserted here?
country =(string)(countrycode);
country;
21.}
22.}
which is the most appropriate code snippet that can be inserted at line 18 in the following code?
(assume that the code is compiled and run with assertions enabled)
.*;
class asserttest
4.{
e hashmap cctld;
asserttest()
8.{
= new hashmap();
(“in”, “india”);
(“uk”, “united kingdom”);
(“au”, “australia”);
13.// more code...14.}
15.// other methods.... string getcountry(string countrycode)
17.{
18.// what should be inserted here?
country =(string)(countrycode);
country;
21.}
22.}
countrycode!= null;
countrycode!= null : “country code can not be null”;
cctld!= null : “no country code data is available”;
cctld : “no country code data is available”;
13:
give the following code:
public class example{
public static void main(string args[]){
int l=0;
do{
n(“doing it for l is:”+l);
}while(—l>0)
n(“finish”);
}
}
which well be output:
give the following code:
public class example{
public static void main(string args[]){
int l=0;
do{
n(“doing it for l is:”+l);
}while(—l>0)
n(“finish”);
}
}
which well be output:
it for l is 3
it for l is 1
it for l is 2
it for l is 0
14:which statements about java code security are not true?
bytecode verifier loads all classes needed for the execution of a ing code is performed by the runtime runtime the bytecodes are loaded, checked and run in an interpreter. class loader adds security by separating the namespaces for the classes of the local file system from those imported from network :a class design requires that a member variable should be accessible only by same package, which modifer word should be used?
ted
modifer
e
16:character流与byte流的区别是
a.每次读入的字节数不同
b.前者带有缓冲,后者没有
c.前者是块读写,后者是字节读写
d.二者没有区别,可以互换使用
简答题
17:找出两个字符串中最大子字符串,如“abractyeyt”,“dgdsaeactyey”的最大子串为“actyet”
18:假设你有一个用1001个整数组成的数组,这些整数是任意排列的,但是你知道所有的整数都在1到1000(包括1000)之间。此外,除一个数字出现两次外,其他所有数字只出现一次。假设你只能对这个数组做一次处理,用一种算法找出重复的那个数字。如果你在运算中使用了辅助的存储方式,那么你能找到不用这种方式的算法吗?
19:到底在哪里使用cascade=“...”?
20:使用tomcat部署应用程序 emoryerror 吗?如何解决的。
21:请写一个java程序实现数据库缓冲池的功能?
22:有200个正整数,且每个数均在1000至9999之间。请编制函数,其函数的功能是:要求按每个数的后三位的大小进行升序排列,然后取出满足此条件的前10个数依次存入数组bb中,如果后三位的数值相等,则按原先的数值进行降序排列。
23:anonymous inner class(匿名内部类)是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
24:找出字符串a中包含的字符可以进行的所有不同组合。例如:abccd中,ab,ac,bc,cc,abd等都是可能的组合。
25:下面的代码在绝大部分时间内都运行得很正常,请问在什么情况下会出现问题?问题的根源在哪里?
import .linkedlist;
public class stack {
linkedlist list = new linkedlist();
public synchronized void push(object x){
synchronized(list){
t(x);
notify();
}
}
public synchronized object pop()
throws exception {
synchronized(list){
if(()<= 0){
wait();
}
return last();
}
}
}
Java实训心得体会篇4
《java编程》
计算器
班级:****** 姓名:******
学号: ******* 指导老师:******
实验名称:java计算器
1实验目的: java编程语言在编程方面的具体应用,以及使用面向对象方法,对小应用程序进行需求分
析、概要设计、详细设计,最后使用java编程实现的全过程。
2实验意义:
在编程我们使用的java语言,是目前比较流行的编程语言。在当今这个时代,java语言在编程方面的优势使得编程有了更好的选择。java语言最大的特点是具有跨平台性,使其不受平台不同的影响,得到了广泛的应用。实训性质
本课程是计算机信息管理专业的一门实践性课程,是《java编程》课程的实践性教学环节。实训目标
⑴综合应用java程序设计的知识解决实际问题。
⑵学会在应用程序的设计过程中,应用面向对象的程序设计方法。⑶学会应用jdbc创建数据库应用程序。
⑷学会开发基于swing的应用程序及多文档应用程序的设计。实训任务
用java语言开发工具(例如jdk、jcreator、netbeans等)制作一个简单的可运行的完整的应用程序或小型系统,并编制出各阶段必要的文档。
将创建一个计算器,可以进行常用的加减乘除算术运算。本实例的知识点有:窗口布局器gridlayout的应用,对按钮消息的监听和响应。
6实训条件
<软件:>windows xp,netbeans ide 7开发背景: java是由sun microsystems公司于1995年5月推出的java程序设计语言(以下简称java语言)和java平台的总称。java语言是一个支持网络计算的面向对象程序设计语言。java语言吸收了smalltalk语言和c++语言的优点,并增加了其它特性,如支持并发程序设计、网络通信、和多媒体数据控制等。
8系统部分分析:
1)java语言是简单的。java语言的语法与c语言和c++语言很接近,使得大多数程序员很容易学习和使用java。另一方面,java丢弃了c++ 中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。
2)java语言是一个面向对象的。java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。java语言全面支持动态绑定,而c++ 语言只对虚函数使用动态绑定
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),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制.6)java语言是体系结构中立的。java程序(后缀为java的文件)在java平台上被编译为体系结构中立的字节码格式(后缀为class的文件), 然后可以在实现这个java平台的任何系统中运行。
7)java语言是可移植的。这种可移植性来源于体系结构中立性,另外,java还严格规定了各个基本数据类型的长度。java系统本身也具有很强的可移植性,java编译器是用java实现的.8)java语言是解释型的。如前所述,java程序在java平台上被编译为字节码格式,然后可以在实现这个java平台的任何系统中运行。
9)java是高性能的。与那些解释型的高级脚本语言相比,java的确是高性能的。事实上,java的运行速度随着jit(just-in-time)编译器技术的发展越来越接近于c++。
10)java语言是多线程的。在java语言中,线程是一种特殊的对象,它必须由thread类或其子(孙)类来创建。
11)java语言是动态的。java语言的设计目标之一是适应于动态变化的环境。
目录
课程设计题目 ……………………………… p1
课程设计简介 ……………………………… p2
课程设计源代码…………………………… p5
课程设计运行结果 ……………………… p15 课程设计心得体会 ………………………
p16
package computerpad;import .*;import .event.*;import .*;import .*;import list;import format;public class computerpad extends frame implements actionlistener {
numberbutton numberbutton[];
operationbutton oprationbutton[];
button 小数点按钮,正负号按钮,退格按钮,求倒数按钮,等号按钮,清零按钮;
panel panel;
jtextfield resultshow;
string 运算符号[]={“+”,“-”,“*”,“/”};
linkedlist 链表;
boolean 是否按下等号=false;
public computerpad()
{
super(“计算器”);
链表=new linkedlist();
numberbutton=new numberbutton[10];
for(int i=0;i<=9;i++)
{
numberbutton[i]=new numberbutton(i);
numberbutton[i].addactionlistener(this);
}
oprationbutton=new operationbutton[4];
for(int i=0;i<4;i++)
{
oprationbutton[i]=new operationbutton(运算符号[i]);
oprationbutton[i].addactionlistener(this);
}
小数点按钮=new button(“.”);
正负号按钮
=new button(“+/-”);
等号按钮=new button(“=”);
求倒数按钮=new button(“1/x”);
退格按钮=new button(“退格”);
清零按钮=new button(“c”);
eground();
eground();
eground();
eground();
eground();
eground();
ionlistener(this);
ionlistener(this);
ionlistener(this);
ionlistener(this);
ionlistener(this);
ionlistener(this);
resultshow=new jtextfield(10);
izontalalignment();
eground();
t(new font(“timesroman”,,14));
der(new softbevelborder(d));
kground();
table(false);
panel=new panel();
out(new gridlayout(4,5));
(numberbutton[1]);
(numberbutton[2]);
(numberbutton[3]);
(oprationbutton[0]);
(清零按钮);
(numberbutton[4]);
(numberbutton[5]);
(numberbutton[6]);
(oprationbutton[1]);
(退格按钮);
(numberbutton[7]);
(numberbutton[8]);
(numberbutton[9]);
(oprationbutton[2]);
(求倒数按钮);
(numberbutton[0]);
(正负号按钮);
(小数点按钮);
(oprationbutton[3]);
(等号按钮);
add(panel,);
add(resultshow,);
addwindowlistener(new windowadapter()
{ public void windowclosing(windowevent e)
{
(0);
}
});
setvisible(true);
setbounds(100,50,240,180);
setresizable(false);
validate();
} public void actionperformed(actionevent e)
{
if(rce()instanceof numberbutton)
{
numberbutton b=(numberbutton)rce();
if(()==0)
{
int number=ber();
(“"+number);
t(”“+number);
是否按下等号=false;
}
else if(()==1&&是否按下等号==false)
{
int number=ber();
string num=(string)first();
string s=(”“+number);
(0,s);
t(s);
}
else if(()==1&&是否按下等号==true)
{
int number=ber();
first();
(”“+number);
是否按下等号=false;
t(”“+number);
}
else if(()==2)
{
int number=ber();
(”“+number);
t(”“+number);
}
else if(()==3)
{
int number=ber();
string num=(string)t();
string s=(”“+number);
(2,s);
t(s);
}
}
else if(rce()instanceof operationbutton)
{
operationbutton b=(operationbutton)rce();
if(()==1)
{
string fuhao=运算符号();
(fuhao);
}
else if(()==2)
{
string fuhao=运算符号();
(1,fuhao);
}
else if(()==3)
{
string fuhao=运算符号();
string number1=(string)first();
string number2=(string)t();
string 运算符号=(string)(1);
try
{
double n1=ouble(number1);
double n2=ouble(number2);
double n=0;
if((”+“))
{
n=n1+n2;
}
else if((”-“))
{
n=n1-n2;
}
else if((”*“))
{
n=n1*n2;
}
else if((”/“))
{
n=n1/n2;
}
();
(”“+n);
(fuhao);
t(”“+n);
}
catch(exception ee)
{
}
}
}
else if(rce()==等号按钮)
{
是否按下等号=true;
if(()==1||()==2)
{
string num=(string)first();
t(”“+num);
}
else if(()==3)
{
string number1=(string)first();
string number2=(string)t();
string 运算符号=(string)(1);
try
{
double n1=ouble(number1);
double n2=ouble(number2);
double n=0;
if((”+“))
{
n=n1+n2;
}
else if((”-“))
{
n=n1-n2;
}
else if((”*“))
{
n=n1*n2;
}
else if((”/“))
{
n=n1/n2;
}
t(”“+n);
(0,”“+n);
last();
last();
}
catch(exception ee)
{
}
}
}
else if(rce()==小数点按钮)
{
if(()==0)
{
是否按下等号=false;
}
else if(()==1)
{
string dot=el();
string num=(string)first();
string s=null;
if(f(dot)==-1)
{
s=(dot);
(0,s);
}
else
{
s=num;
}
(0,s);
t(s);
}
else if(()==3)
{
string dot=el();
string num=(string)t();
string s=null;
if(f(dot)==-1)
{
s=(dot);
(2,s);
}
else
{
s=num;
}
t(s);
}
}
else if(rce()==退格按钮)
{
if(()==1)
{
string num=(string)first();
if(()>=1)
{
num=ing(0,()-1);
(0,num);
t(num);
}
else
{
last();
t(”0“);
}
}
else if(()==3)
{
string num=(string)t();
if(()>=1)
{ num=ing(0,()-1);
(2,num);
t(num);
}
else
{
last();
t(”0“);
}
}
}
else if(rce()==正负号按钮)
{
if(()==1)
{
string number1=(string)first();
try
{
double d=ouble(number1);
d=-1*d;
string str=f(d);
(0,str);
t(str);
}
catch(exception ee)
{
}
}
else if(()==3)
{
string number2=(string)t();
try
{
double d=ouble(number2);
d=-1*d;
string str=f(d);
(2,str);
t(str);
}
catch(exception ee){
}
}
}
else if(rce()==求倒数按钮)
{
if(()==1||()==2)
{
string number1=(string)first();
try
{
double d=ouble(number1);
d=/d;
string str=f(d);
(0,str);
t(str);
}
catch(exception ee){
}
}
else if(()==3)
{
string number2=(string)t();
try
{
double d=ouble(number2);
d=/d;
string str=f(d);
(0,str);
t(str);
}
catch(exception ee){
}
}
}
else if(rce()==清零按钮)
{
是否按下等号=false;
t(”0“);
();
}
} public static void main(string args[])
{
new computerpad();
}
}
package computerpad;import .*;import .event.*;import .*;public class numberbutton extends button {
int number;
public numberbutton(int number)
{
super(”"+number);
=number;
setforeground();
}
public int getnumber()
{
return number;
} }
import .*;import .event.*;import .*;public class operationbutton extends button {
string 运算符号;
public operationbutton(string s)
{
super(s);
运算符号=s;
setforeground();
}
public string get运算符号()
{
return 运算符号;
} } 14 java实训心得:
未接触java之前,听人说java这门语言如何的强大和难以入门,但学习之后,给我的感觉却是语言没有所谓的难于不难,关键是自己有没有真正投入去学,有没有花时间去学。java是一门很好的语言,经过周围人对java的宣传,我一开始不敢去学习这门语言,因为一门高级语言总是让人想到一开始的学习会很难,但是后来在自己的努力和老师同学的帮助下,我加入了java学习者的行列。
老师把我们带进了门,那么,以后漫长的深入学习还是要靠自己。经常性的编写一些程序,或则去看懂、研究透别人编写的程序对于我们打好基础是非常有利的。让我们怀着对java的一腔热情,用自己的刻苦努力去把java学好。将来,用自己的成绩去回报有恩于我们的社会、家人和朋友。
Java实训心得体会篇5
计算机3班
窦金霞
20104773
最近几周一直在弄程序,说实话真的很累,但累中也有成功的快乐。我觉得学到了很多东西,这是只看课本知识所不能学到的。
说实话,以前我一直没学过java虽然我也知道java的重要性,可是即使上课听了,不实践还是掌握不了。因为种种原因,今年我没有买笔记本。没有机器,仅仅靠每周一次的上机练习是绝对不够的。所以我就插空调程序,在舍友们不用的时候自己再接她们的电脑调。
调上一个web版的通讯录程序时我已经感觉到学的很吃力,好多东西都不懂。这次做的这个学生成绩管理系统更复杂了,所以一开始调的时候感觉特别吃力.所以我告诉自己不能放弃,慢慢来,就这样我从最基本的sql语句session对象开始学起,我觉得我还有太多不懂得所以要比别人付出更多的努力。就这样我一点一点的学着„„
说心里话,在做上一个web版的通讯录时,我就感觉到成功的喜悦。好多地方我都是一点一点的问的,在问的过程中,我也学会了很多,像:servlet和jsp之间跳不过去时有两种解决办法,;二是将servlet中的throws exception改成try catch以捕捉异常;我还学到了集中查找错误的方法,可以加上两个双斜杠“//”将具体的方法屏蔽掉,一检查是方法错误还是servlet错误,n()将获得的数据输出,用来检查数据传输过程有没有错误等等。
虽然在别人看来,这些方法可能都很常规,但是确实我自己学会的,我觉得很有成就感。我已经做好计划了,暑假的时候去买本本用自己的本本练习一下java,虽然下学期不学java了,但是我对java的热情不会因为这个而削减的!
做完这个学生成绩管理系统后,我觉得我对java的看法已经改变了。一前总以为java很繁琐很难,听同学说java不好学,开始又有一些听不懂,所以一直很畏惧java。但真正做了这个系统以后我才感觉到其实任何事都没有难与不难之分,只要你肯努力的去做,世上无难事只怕有心人!
我现在对java学习充满了热情,我知道我还有很多的不足
还有很多需要努力的地方,所以我的java之旅将继续进行„„
上一篇:京东工作总结范文【最新4篇】