
求一份java上机实验心得,300字左右
在这一系列的实验中,我基本掌握了Java的编程规则、知识要点和一些小技巧,特别是对面向对象的编程思想和风格有了进一步的认识和体会。
同时,因正确的编出程序而带来的成就感让我对编程更加感兴趣。
对于在这些实验过程中,请教老师、同学互助、查阅资料等基本的学习方式,使我更加领悟到集体和团队的力量,也树立了敢于攻坚的信心。
说起来编程的经验应该是多了很多。
但是在上机调试的时候还是遇到了相当多的问题。
很多的错误都很难体会,有的时候是输入的错误,这种错误还是比较容易找出来的,但是有些问题,比如一些题目需要导入一些包,这一点就没有办法了。
发现JAVA虽然看起来比C或C++要容易一点,但是由于它自身带有相当多的方法定义,这些个方法虽然不用我们自己再去编写了但是需要花相当多的时间去记忆那些方法是需要导入的,还有方法名……所以对我来说这真的是比C里简单几个文件的导入还要难上很多……还是觉得自己编的方法(函数)自己用的习惯。
不过现在的编程的方向已经是面向对象和面向数据的了,所以我需要时间去适应这样的编程思想。
java实训心得体会
一周的实训转瞬即逝,在这短暂的时间里,我们在老师的指导和帮助下,对于网页设计与制作有了进一步的了解。
虽然存在各种各样的问题,但是,这次动手实践经历的意义也是显而易见的。
通过这次实训,我学到了很多有价值的东西。
整个开发的过程对我来说是一次将理论应用于实践的过程,是将以前所学知识充分利用的过程,是一次真正的实践过程。
在这次网页设计中,学到了很多在课堂内所学不到的知识,真正拓展了自己的能力,是一次难得的历练经历收获很大。
我感受最深的是:想要最好一个网站,素材和技能都十分重要。
好的素材需要多放面查找资料的,可以从图书、网站和新闻上查找的。
好的技能需要不断的实践,经常锻炼做网页。
如果拥有好的素材和精湛的技能就可以做出最精湛的网页。
另外,亲自动手也让自己看到了自身能力的不足,看到了理想与现实之间的差距,这一切都需要今后进一步加强学习理论知识与真正动手做一些课题来弥补。
Java学习心得
学习感想——思路决定出路人的学习是无止境的,只有不断的学习,才能给自己更丰富,更开阔的思路,经过两天的学习,让我感悟到很多事情,都是有两面性的,穷则变,变则通,出路在于变通,当目前的想法不能成功,说明你的想法有可能是错的,或者是由于没有改变自己的思路或者是懒于改变自己的思路或者是根本不想改变自己的思路,成功总有方法,想成功就要找方法,而思考是一切正确策略和方法的起源,思考其实就是问与答的过程,当你做一件事情没有达到目标时,问自己一个为什么
问自己问题出在了哪里,然后自己给出答案,学会反思学会换位思考。
“没有不好的孩子,只有不好的教育”,例如,在课堂中,在一日生活中孩子没有如我们所预想的那样做一些正确的事情,不能达到我们所要求的目标时,我们只能对孩子着急吗
与其对孩子发脾气,不如改变自己的教育观点理念,反思自己为什么,不能懒于改变自己的思路,就要求别人去适应自己的思路,我们何不反思自己从事情的另一个角度开始着手,可能会有意外收获,就像我们经常说的,给孩子机会孩子就会给你惊喜。
从中,我还深刻的理解到一个道理,大凡世界上能做大事的人,都能把小事做细,做好,做好了每件小事逐渐积累就会发生质变,小事就会变成大事,任何一件小事只要你把它做规范了,做到位了,做透了,你就会从中发现机会,找到规律,从而成就大事,也就是说,一件事情我会做了,但做好了吗,做精了吗,一个人无论从事何种职业,都应该尽心尽责
java的实训心得体会
你可以写一下实习的目的,经过,有哪些收获就可以了。
java实验总结
1 实验题目: Java 编程环境熟悉1、实验目的:了解Java的配置环境,掌握Java Application的程序结构和开发过程,了解Java Applet的功能与程序结构,掌握Java程序的调试、运行过程。
2、实验仪器:计算机(内存>512M,硬盘剩余1G空间,CPU奔腾4);安装JDK1.5版本,至少运行简单的编辑程序如notepad。
3、实验内容及步骤:1编写一个Application 程序,显示“Welcome to Java Programming”2编写一个Applet 程序,在窗口中显示“Hello Java实验报告中写出详细的过程及运行结果、错误的过程也要写出来,并且分析出错的原因,该部分不能雷同,一经查出重做,三次重做取消实验考试资格。
4 实验结论: 简单、准确的总结这次实验的主要内容,个人收获及感受。
5 问题讨论及思考: 列出你实验中出现的问题,比如没解决的问题、同学或老师帮助解决的问题和解决的思路。
该部分不能出现雷同现象。
2 实验题目: Java 基本语言基础1、实验目的:掌握Java基本语言基础:基本数据类型、操作符、流程控制语句。
2、实验仪器:计算机(内存>512M,硬盘剩余1G空间,CPU奔腾4);安装JDK1.5版本,至少运行简单的编辑程序如notepad。
3、实验内容及步骤:1.利用循环语句编程,找出所有的水仙花数并输出。
其中水仙花数是三位数,它的各位数字的立方和等于这个三位数本身,例如:371=33+73+13,371就是一个水仙花数。
2.编写一个程序,用穷举法找出2~50之间的质数,并输出实验报告中写出详细的过程及运行结果、错误的过程也要写出来,并且分析出错的原因,该部分不能雷同,一经查出重做,三次重做取消实验考试资格。
4 实验结论: 简单、准确的总结这次实验的主要内容,个人收获及感受。
5 问题讨论及思考: 列出你实验中出现的问题,比如没解决的问题、同学或老师帮助解决的问题和解决的思路。
该部分不能出现雷同现象。
3 实验题目: Applet 程序1、实验目的:掌握简单Applet程序的编写及运行过程,了解Java提供的Applet的相关常用类,学习使用API。
2、实验仪器:计算机(内存>512M,硬盘剩余1G空间,CPU奔腾4);安装JDK1.5版本,至少运行简单的编辑程序如notepad。
3、实验内容及步骤:编写一个Applet 程序,可拖动鼠标实现画点和圆,并可利用单选钮选择点和圆的线条颜色。
实验报告中写出详细的过程及运行结果、错误的过程也要写出来,并且分析出错的原因,该部分不能雷同,一经查出重做,三次重做取消实验考试资格。
4 实验结论: 简单、准确的总结这次实验的主要内容,个人收获及感受。
5 问题讨论及思考: 列出你实验中出现的问题,比如没解决的问题、同学或老师帮助解决的问题和解决的思路。
该部分不能出现雷同现象。
java学习心得最详细的java学习心得有吗
学习阶段:屁股→手→脑袋→心 学习的理念 基础阶段 第一,正直是做人的基本素质之一,高考也是公平的竞争。
我们 要给自己、给家长、给周围的人表现真实的自我:真实的成绩就是诚 实的反馈
要杜绝歪门邪道、急功近利、弄虚作假的一切不道德行为, 阶段效果描述 屁股 手 脑 心 用屁股学习是最初的也是最基本的阶段,成绩大幅度提高的 学生的共同点就是“屁股坐得住”。
“坐得住”意味着坐到座位上 最少要2个小时不挪窝,高考是2 -2.5小时考一科,如果坐不住, 就连考试都应对不了。
同学们可以循序渐进有意识地锻炼自己的定 性,能达到2 小时不动了,就再适当延长时间,慢慢地就会发现, 随着时间的增加能提高精神集中力。
能长时间坐得住已经意味着成 功了一半,每个人都要时常检查一下自己的屁股是不是固定在课桌 前边。
只用眼睛看的学习就像用没有线的针缝衣服一样荒谬。
在学 习过程中,动手写、算非常重要,随着动手写过的纸张堆积高度的 增加可以看到成绩的攀升。
一旦屁股和手的阶段习惯化了,在自己 都感觉不到的时候成绩已经进入了高分行列。
能坐得住,手也充分调动起来了,下一步就是排除杂念制定 目标。
在充分理解高考出题原则的基础上,按各科的学习特点从基 础知识到深化学习,自我开发学习方法,动员自己的头脑,实现自 我开拓。
前三个阶段都做到了,学习自然就进入了用心感受的阶段。
通过学习能感到欢喜,感觉到学习的喜悦、幸福、充实、满足感, 能感觉到学习的最终目的带给自己的成就感,从而迸发出对学习 的无限热忱
12 咨询电话:88517766 查询网址: 这对培养自己的人格也是有着举足轻重的作用的。
第二,要做一个有孝心的人。
“可怜天下父母心”,父母对自己的 孩子都是倾注了满腔的爱的。
理解父母对自己的殷切希望,珍惜自己 所拥有的健康家庭,时常想想能为父母为家庭做点什么,并立刻付诸 实施。
成熟阶段 第三,要有远大的理想。
坚定理想信念,把理想按阶段分割成一 个个看得见摸得着的短期目标,譬如现在的短期目标就是考上理想大 学。
有了远大理想和短期目标,可以使我们忘却困难而奋发拼搏。
第四,要做一个会思考且时常思考的人。
回眸过去,品味现在, 展望将来,通过反复思考寻找新的自我,更加坚定自己的目标与 理想
二、各学科学习方法指导 语文 注重基础知识的积累,注重基本技能的提高,强调多读多想多说 多写。
高中的语文学习是在初中学习基础上的继续提高、拓展,而高 中的语文学习与初中又有了明显的不同。
初中语文课老师讲得多,要记背的东西多;高中是语文课堂讨论 多,要理解研究的东西多。
初中的课堂讨论,一般有明确的结论,并 多以老师的总结和说法作为标准;高中的课堂讨论,有些没有固定结 论,老师的说法常常只是一家之言,只要你言之成理可以自圆其说,便 能得到认可。
初中的课堂是跟着老师走,老师问什么就答什么,课堂的主要时 间都是老师在讲解、提问;高中的课堂是跟着问题走,透彻清楚地讨 13 咨询电话:88517766 查询网址: 论问题是重点所在,老师讲得少,学生的活动多。
相应的,初中的作 业可以在“教参”上找到答案;而高中的作业有些需要自己创造发挥。
初中语文学什么考什么,怎么学就怎么考,重在知识积累和运用 的考查;高中则是学什么不考什么,学和考没有一对一的关系,重在 理解和运用能力的考查。
面对这样的区别,我们也应及时调整自己的学习方式,以尽早适 应高中的语文学习。
下面从课内学习、课外阅读两方面来说明高中语 文学习的方法。
课内学习 (一)课文的学习 学习课文,应该做到以下“五个必读”。
读“单元重点”和“学 习重点(自读提示)”;读课文;读注释;读思考和练习;读“单元提 示和知识短文”。
(二)听课 听课,主要应该听问题,思考老师或同学为何要提出这样的问 题
对这样的问题可以有几种回答
哪些回答最合理
不合理的回答 其不合理处是什么
同学们的发言谁说的有理
他怎样想到这一步
自己是否也想到这些了
然后听老师对问题分析的思路。
(三)课后应做“四个一”。
“四个一”是:学完一篇课文后,要尽量用自己的“一句话”概 括课文的内容,以锻炼综合概括能力;要尽量用“一句话”概括自己 的学习心得,整理自己此次学习的收获。
这是理清思路的过程,也是 熟练记忆的过程;要背诵文中的“一段话”,以强化积累;要“仿写一 段”,即选择最喜欢的段落仿写一段。
课外阅读 课外阅读是开阔视野、增长知识与才干、提高语文能力与水平的 14 咨询电话:88517766 查询网址: 重要途径,所有语文学得好的人,他的阅读一定比较广泛。
因为他的 “语言库”和“资料库”经常得到补充和整理,所以他的理解准确,表 达生动流畅。
但如果阅读量不足,“内存”不够,那么他的表达就会失 之平庸肤浅,或者平淡无味、言不及义。
所以同学们应该抓紧课余和 假期,阅读自己喜欢读的和教学大纲规定阅读的文学著作。
(一)上学时读短篇 上学时课业负担重,应该选读散文、杂文、小小说。
因为这些文 章篇幅短,不需要太长时间就可以读完。
比如散文,像梁实秋、朱自 清、秦牧、刘墉、龙应台、余秋雨等人的文章,或幽默生动、或文笔 优美、或知识丰富、或见解深刻、或蕴涵哲理、或引人思考。
只要你 去读,就会有收获。
(二)假期读长篇 假期里,应该有计划地读2 - 3 部长篇小说,这里,建议同学们 有计划地读完教育部规定的“高中生必读篇目”中的书籍。
比如:罗 贯中《三国演义》、曹雪芹《红楼梦》、施耐庵《水浒》、吴承恩《西游 记》、鲁迅《呐喊》、茅盾《子夜》、巴金《家》、钱钟书《围城》;塞万 提斯《堂•吉诃德》、雨果《巴黎圣母院》、巴尔扎克《欧也妮•葛朗 台》、狄更斯《匹克威克外传》、列夫•托尔斯泰《复活》、海明威《老 人与海》、《莫伯桑短篇小说选》、《契诃夫短篇小说选》、《欧•亨利短 篇小说选》等。
还有郭沫若《女神》、鲁迅杂文、《朱自清散文集》、曹 禺《雷雨》、老舍《茶馆》、《普希金诗集》、《泰戈尔诗集》、莎士比亚 《哈姆雷特》等。
当然还可选读一些文艺理论著作和政治书籍,我们不能等到临近 高考时才去看书,那样是不现实的。
应该抓住现在时间的宽余和学习 的从容,抓紧读书。
(三)关于阅读名著 有些同学喜欢看漫画、看武侠、看推理判案的作品,看这些作品 15 咨询电话:88517766 查询网址: 确实很“过瘾”,但不能代替读名著。
读名著,尤其是读一些外国名著, 比如《简•爱》、《悲惨世界》、《红与黑》、《复活》等等,会让人受益 无穷。
因为一个人的生活范围很窄,能够见到和感受的人与事也很少; 视野窄、见识少,就不会深刻体会生命的价值与意义,就不会理解他 人,理解人生。
如果阅读名著,会发现名著给我们提供了人生需要借 鉴的许多东西,可以更加深刻地认识人的灵魂与心理;会让人更加懂 得人、人生是怎么回事;会有更深刻的感情体验;会更加珍惜生命也 更加宽容。
而当你用宽容之心去待人,用欣赏的眼光去看人,用深刻 的见解去讨论,用精美的文字去作文时,你会发现自己已经从名著中 得到了许多。
数学 高中阶段的数学学习规律是:“三年发展看高一,高一关键在‘一 上’”。
打好高一的数学基础,特别是开好“一上”即高一上学期高中 数学学习的“头”,对于顺利完成高中三年的数学学习,打好自己终生 发展的基础极为重要。
为此,这里首先要给同学们谈谈高中数学学习 的基本规律和基本方法。
国家把数学规定为高中的一门主要课程。
一个人从小学到高中, 要学习十二年数学。
高中毕业后升入大学继续深造,无论是理工科还 是文史类大学,都还要继续学习数学。
2003 年春夏SARS 肆虐,中考 取消了许多科目,独独保留了“语、数、外”;高考几十年改革改来改 去,“语、数、外”都是必考内容。
高中阶段的数学学习,要学习代数、几何的基础知识和概率统计、 微积分的初步知识,掌握基本技能和基本思想方法,培养自己的思维 能力、运算能力、空间想象的能力、解决问题的能力以及创新的意识, 陶冶良好的个性品质和学习习惯。
数学学习对于发展高中生的思维品 16 咨询电话:88517766 查询网址: 质和思维水平及其重要。
要想使自己更聪明,要想将来成为有用人才, 要想为终身事业打好基础、夺取主动,必须学好数学。
高中我们使用的是全国通用的新教材,叫做“全日制普通高级中 学教科书(试验修订本•必修)数学”,它的内容分为两部分:必修课 和选修课。
必修课共12 部分内容,分别为(1)集合、简易逻辑;(2) 函数;(3)不等式;(4)平面向量;(5)三角函数;(6)数列;(7)直 线和圆的方程;(8)圆锥曲线方程;(9)直线、平面、简单几何体; (10)排列、组合、二次项定理;(11)概率;(12)研究性课题。
选修 课分选修Ⅰ和选修Ⅱ。
选修Ⅰ包括1、统计;2、极限与导数;选修Ⅱ 包括:1、概率与统计,2、极限;3、导数与微分;4、积分;5、复数; 6、研究性课题。
高中数学内容抽象程度有较大提高,理论系统性大大增强,在学 习时要求思维能力要爬一个陡坡,即实现由具体形象思维向抽象逻辑 思维的过渡与提高。
比起初中义务教育阶段的数学课内容,高一内容 的抽象程度和符号化水平大大增加,难度陡升,对抽象逻辑思维能力 的要求大大提高,必须深刻理解,消化内化,才能掌握它并变成自己 知识结构的一部分。
许多同学不了解初高中数学内容的重大变化与区 别,学习方法没有及时地与时俱进,因而很不适应。
十五、六岁的青少年正处于形象思维向抽象逻辑思维发展的“关 键”期。
能不能实现这个“发展”,除了身心这个生理条件的发展之外, 还必须经过特别“有意识的思维训练”。
错过了这个“关键期”,数学 抽象思维能力的培养和发展就会大受影响,大打折扣,事倍功半,甚 至难以弥补,不可逆转,导致终生遗憾。
如果转变得好,有意识地实 现了这个“飞跃”,数学学习就会从“山重水复疑无路”转而到“柳暗 花明上坦途”。
“天高任鸟飞,海阔凭鱼跃。
”主动学习,智力参与,勤奋研读,掌 17 咨询电话:88517766 查询网址: 握规律。
愿同学们能尽快地进入高中数学学习的“自由王国”,享受数 学学习成功的快乐与欢愉。
英语 高中阶段的英语学习非常重要,一方面要打好英语基础,另一方 面要准备高考。
更重要的是,要在高中阶段摸索出适合自己的学习方 法,形成适合自己的、科学的学习方法和学习习惯,同时打好基础。
我们许多同学花在学习英语上的时间并不少,但是效果不佳,原 因就是学习方法不对头,没有形成好的学习习惯。
许多同学误以为天 天背单词、做试题、对答案,就是学习英语。
他们分不清学习英语和 学习数学或化学有什么区别,好像只是不同的符号系统。
实际上,学 习语言和学习其他学科完全不一样。
学习语言的基本办法是大量实践, 学了就用,不要去推理,不要过多地思辨。
任何语言都有许多约定俗 成的表达方式,就是惯用法,是没有道理可讲的。
拿汉语举个例子: “外甥打灯笼,照舅(旧)”。
为什么说“打”灯笼而不说“提”灯笼
因为祖祖辈辈都那么说,是习惯用法。
英语也是如此。
有些同学认为,现在是“学英语”,等将来学会了再去“用英语”。
现在还不是用英语的时候。
其实,从学习英语的第一天起,就应该边 学边用,以用带学。
从今以后,每天早上见到熟人就说Good Morning 不要再说“你早”。
今天课堂上学了5个单词,这一整天,就想方设法 用这5个单词,加上以前学过的词汇,模仿书上的或词典里的句型造 自己的句子。
每个单词起码用它20遍(不是背20遍)。
高中一年级, 应该已经掌握1000多个单词了,所以高中阶段可以读一些简易的 英语分级读物。
通过大量阅读,可以反复遇到大部分以前学过的单词, 这样单词就不会遗忘,而且还能学到这些熟词的许多新用法、新搭配。
到书店去,打开一本英语分级读物看2-3页,如果平均每页的生词 只有3-5个,这本书就值得买。
生词太多的书,现在不要买。
过半 18 咨询电话:88517766 查询网址: 年、一年,随着自己词汇量的增加,书的生词量变少了,少到每页只 有3-5个时,再去买来看。
高中阶段,应该学一些语法,因为我们是在非英语环境中学英语, 学一些语法,有利于加深我们对英语的理解。
但是千万不能变成个语 法迷,见到一个句子就去分析语法。
高中阶段,是学习英语的关键时期。
在这两、三年之内,需要投 入足够时间来学习英语。
更重要的是,必须找到学习英语的有效方法, 养成良好的学习习惯。
在高中阶段,一定要切切实实打好基础,不要 急于求成,花时间去大量做模拟试题。
提高英语水平的基本途径是从 自己现有水平起步,循序渐进。
按教学大纲规定,高中一年级的英语 词汇量估计不会超过1500个单词。
除了初中课本之外,接触过的课外 英文资料也不会太多。
因此,应该在这个基础上制定自己的学习计划。
建议你可以考虑做以下三件事:背诵课文。
如果不能全背,可以 选其中一些段落来背诵。
能够流利背诵之后,争取把它默写出来,然 后和原文对照,改正语法和拼写错误。
如果你的英文课本有录音磁带, 背诵时,应该模仿磁带的读音。
每天从课文中找出几个单词,特别是 动词,仿照课文的句型,自己造一两个句子。
如果你有一本比较好的 英汉词典,可以查看一下词典中的例句。
每个句子至少要自言自语地 大声说十遍。
外文书店里应该有一些适合你目前水平看的英语简易读 物。
不防买几本比较浅易的来阅读。
光学课本,没有课外阅读,是不 行的。
不要看生词太多的文章,每100 个词中不认识的生词不要多于 3-4 个。
以上三条,坚持三个月,会有大进步。
坚持半年,会有大突破。
物理 一、高中物理的特点 1、高中物理更加注重能力的培养 19 咨询电话:88517766 查询网址: 教学大纲指出,“要通过概念的形成,规律的得出,模型的建立, 知识的运用等,培养学生抽象和概括、分析和综合、推理和判断等思 维能力”,“切实提高理解能力”等。
在高中物理中,过程和结果,更重过程;记忆和理解,更重理解; 切实提高理解能力是培养思维能力中基础的一环。
2、知识的深度、广度、难度明显高于初中物理,但只要方法得当, 认真努力是完全可以学好的。
3、高中物理不是听懂的、看懂的,而是做懂的、想懂的。
4、讲什么,不考什么,但考的准和讲的有关系,这一特点是相当 多的一部分学生不适应的。
初中物理以知识的考查为主,高中物理以 能力的考查为主,这一明显的反差,不少学生缺乏思想和心理准备,往 往使学生的热情和积极性受挫。
二、高一物理怎么学 1、打好基础 (1)学好语文和数学。
不论是阅读物理课本或是处理作业习题都 必须具有一定水平的语文能力。
课本要能流畅地读下来,题目要能看 懂,能正确地理解题意,能正确地论证或论述物理事件。
数学是解决物理问题的工具,是论证物理问题的主要方法。
在高 一物理学习过程中我们会遇到平行四边形等几何知识,会遇到方程、 方程组、图象等代数知识,学好这些数学知识才能使物理学习变得更 加顺利。
(2)做到“四个第一”。
上好第一节课。
完成好第一次作业。
做好 第一次实验。
完成好第一次考试。
(3)做好预习。
有目的地带着问题听课:高中物理课教学密度明 显大于初中物理教学,课上没有时间让学生反复练习,这样,课前读 书预习就显得十分必要。
通过预习,你可能会发现难理解或不懂的问 20 咨询电话:88517766 查询网址: 题,有备而听,心中有数,可以得到听课的主动权,能带着问题听课, 效果才会好。
(4)用好老师。
在刚开始学习高一物理时会有诸多不适应,听课 或是习题中会有一定困难。
在个人努力的前提下,多和老师交流,求 得老师及时、具体的指导,是顺利度过适应期尽早步入学习正轨的捷 径。
大多数在入门阶段感觉困难的同学,与老师交流沟通不及时甚至 不交流沟通是主要原因之一。
(5)养成良好的学习习惯。
精力集中、独立思考、认真读书、手 脑并用、总结交流。
2、培养能力 到学校来学习,最终的目的不是为了考试,而是为了学会学习,从 学会升级为会学。
只有会学习了,才能算是自由了。
要学会观察,重 视实验。
学会提问题,提高学习能力。
坚持解题后的研究和思考。
先 物理(现象和事实),再务理(务必整理、归纳、分析),再悟理(悟 出其中规律,对现象和事实进行再认识)。
物理入门并不难,深造也是办得到的,只要有心,只要善于学习。
化学 化学是研究物质的,研究的对象是浩瀚的宇宙和地球上的各种各 样的物质,是研究物质的组成、结构、性质以及变化的规律的,是以 实验为基础的一门基础自然科学。
% 全日制普通高级中学化学的教材内容是严格按照教学大纲的要 求编排的,分为必学(必修)和选学(选修)两部分。
必学内容是全体高 中同学在规定的课时内必须学习的,选学的内容是供学有余力的同 学选用的。
% 那么怎样才能学习好高中化学呢?% 21 咨询电话:88517766 查询网址: 实验学好化学的根本基础。
化学是一门以实验为基础的学 科。
新编高一化学教科书中共设计了教师的演示实验38 个,学习实验 13 个(其中有5 个选作实验),课外家庭小实验6 个。
对于中学的每一 个学生实验,要求同学们在进行实验前必须注意以下几个问题。
% 1、上实验课前,要认真复习课文里的有关知识,并预习本实验 的内容,要求做到阅读实验说明,理解实验目的,明了实验 步骤和注意事项,准备好实验报告。
对于实验习题,应提出 实验方案和需用的仪器和药品等。
% 2、每次实验时,要检查实验用品是否齐全,桌上的实验用品应 摆放整齐有序。
做实验时,必须按照规定的步骤和方法进行, 注意安全,并实事求是地做好记录。
% 3、做完实验后,要认真地填写实验报告。
% 4、实验完毕后,拆开实验装置,把仪器中废弃的物质倒在废液 缸里,把要回收的物质倒在指定的容器里,然后把仪器洗涤 干净,放回原处,以培养自己的环保意识。
经老师检查,认 可后方可离开实验室。
5、认真填写实验报告中的各项内容,将实验报告上交老师批阅。
观察学好化学的重要方法。
常用的化学观察方法有三种: 1、全面观察。
化学观察必须有全面性,只有抓住所观察的全部 信息,才能通过思维认识本质。
要按合理的程序进行观察,一 般的程序是由事物的整体到部分,再由部分到整体,观察某 个化学反应时,应先观察每种反应物有什么特征,注意反应 的仪器与反应条件,然后仔细观察反应过程中发生的各种现 象,如放热、发光、变色、放出气体、生成沉淀等等,最后 还要观察生成物的特征。
% 2、重点观察。
在全面观察的基础上应抓住重点进行重点观察, 为对信息的理解打好基础。
特别是对化学实验现象,抓住重 点实验现象尤为重要。
% 3、精细观察。
有些重要的实验现象可能瞬间发生,迅速消失,也 可能现象十分微弱而不明显,不易观察到。
因此都需要同学 22 咨询电话:88517766 查询网址: 们在实验的过程中,有意识地培养自己的精确性、敏捷性、深 刻性和全面性。
% 三、高中学习方法26 问 1、潜力到底挖得完吗
答:实验证明:人脑中约有80% 的“处女地”有待开发。
据闻, 爱因斯坦这位跨越时空、彪炳千古的辉煌业绩的科学巨星, 也只动用了大脑潜能的30%。
可见,人脑承受力及其潜在能 量对相对处于无限时空之中而极其短暂的每一个人的生命来 说,堪称取之不尽,用之不竭的智慧资源。
2、我觉得在高一时只要把成绩保持住,没必要下很大的功夫去争第 一,到高二、高三,再在原有基础上加把劲,这种认识正确吗
答:这种认识不正确,在高一不仅要把成绩保持住,同时,在原 有的基础上提出更高的要求。
因为,学习如逆水行舟,不进 则退,停滞不前的想法不足取,更何况,第一也是相对而言 的,山外有山,楼外有楼。
既使你已经争得了班中第一,也 没有理由自我满足,高一正是打基础的好时机,一定不能放 松自已。
另外,还需要发展自己各方面的素质,学习仅仅是 一个方面。
3、数理化方面的学习方法不够好,该如何改进
答:(1)培养对学科的兴趣; (2)注重公式、定理的推导过程,领会其实质; (3)必要量的练习,练习不是目的,而是掌握定理、公式的 使用方法; (4)记住几道典型的习题,举一反三,关键是多思考。
4、很多人说:到了高中女生就会比男生笨,这种说法对吗
答:这种说法显然是错误的,科学研究表明,从总体上看男女在 智力水平上并没有什么差异,只是因男女性别的差异,会导 致在智力上各有特点,各有优势,比如,在思维特点上,男 23 咨询电话:88517766 查询网址: 生在抽象思维方面有一点优势,而女生在形象思维方面又胜 男生一筹。
但具体到某一个人智力水平还是有区别的,但不 能因此得出女性不如男性的结论,生理上的不同并不能成为 智力水平高低的理由,它只是导致智力特点差异的生理基础。
试想,居里夫人的成就,又令多少男性自叹不如、羡慕不已。
从现实状况来看,确实有一部分高中女生成绩有下降,但这 不是由智力因素引起的,而是由非智力因素引起的,更何况 这也不是普遍现象。
实际上,女生在智力水平上超过男生的 事例也举不胜举,另外,任何学生,随着知识面的扩展,智 力都表现为发展的趋势,到了高中女生就会变笨显然没有科 学依据。
当然,我们也要看到高中女生在生理上比男生的变 化要大一些,会给学习带来不利影响,因此,女生需要更多 的努力,需要比初中时更多的自制力。
5、一天中的有效学习时间是多少
答:一天的时间是有限的,作为学生除了休息等日常生活时间的 支配外,其他时间都可用于学习,一般来说,可以保证10 小 时左右,但有效学习时间应是一个变量,效果的高低也会因 人、因地、因时各有不同。
如今,学生之间存在的竞争是效 率的竞争,方法的竞争,一个人的学习动机、学习态度、学 习方法、以及一个人的兴趣、爱好、情感、意志、性格、品 行都会影响学习的有效性。
因此,提高学习的有效性,增加 时间不是唯一的手段,最佳的方法是努力提高自己各方面的 素质,特别是一个人的意志品质。
6、如何保持注意力的高度集中
答:(1)认识到保证注意力集中的重要意义 注意力是人智力的有机组成部分,心理学研究表明,有意记 忆的效果比无意记忆的效果好,保持注意力的高度集中是有 效听课、有效分析问题、解决问题的必要条件。
(2)保持注意力的高度集中的方法:培养对学科的兴趣,因 为,对感兴趣的东西,会觉得有吸引力,就自然会保持注意 24 咨询电话:88517766 查询网址: 力的高度集中,而兴趣产生于需要,因此,要端正学习的态 度,明确学习的目的,使自己保持有较旺盛的求知欲。
那么, 对不感兴趣的东西,除了去培养兴趣的努力外,关键是发挥 意志力的作用。
另外,有一个良好的心情也非常重要,再次, 应及时调整自己的情绪,培养良好的情感,平时不要小看文 体活动,尽量做到劳逸结合。
学习java的心得
我学习java已经有一年的时间了,不过虽然时间长,但是对于现在的我还是一个初学者,懂不了多少的java初学者。
期间曾迷茫过,曾困惑过,走了不少的弯路,老师布置的试验作业每次都是不会做,每次都是要问同学,这个代码什么意思啊
为什么用这条代码,用别的不行吗
甚至后来根本没耐心问,索性就复制同学的作业交上去。
但是都是各种0分,害的同学也这样,不过他能找老师反驳,而我却没实力。
。
。
渐渐的,我认识到这样下去是不行的,我必须改正自己的学习态度和方式。
接下提到的就是我这一年来的java学习心得。
JAVA是一门计算机语言,是人类发明的语言,应该比人类语言更容易学习,只要你有一种必胜学习JAVA心态就可以成功。
学习JAVA的方法:JAVA学习中,首先要做到课前、课后复习及预习,要时时保持一个清醒的头脑;多和同学沟通;互相学习;取长补短;在学习中做到帮助他人或他人帮助自己。
学习java,的确要学习的东西很多,就像同学提到的。
Java不像.net一家独大,Java的繁盛在于开源社区的庞大,这也带来了分支太多的问题,怎样选择一条好的学习路线,对于初学者来说,的确是一件很迷茫的事。
其实不管java东西再多,总有规律可循。
对于学习java基础的经验就是多做、多思考,基础知识的学习不能不求甚解,要追本溯源,弄清问题的本质。
这样才能举一反三,由点及面。
java的所有编程思路都是“面向对象”的编程。
所以大家在往更高境界发展以前一定要打好基础,基础是王道。
我们的基础要扎实扎实再扎实。
所谓打好基础并不是说要熟悉所有的java代码。
要了解java的结构。
class,methode,object,各种套用import,extend 让自己在结构上对java有个立体而且整体的了解。
学Java千万不要浮躁。
说到浮躁,这也是一个很值得我深思的问题。
我觉得我自己也有这样的倾向,不仅是我,估计大多数的人都有这个毛病。
总是喜欢讨论什么语言最好,什么语言功能强大。
这种讨论倒没有错,不过真正学习的时候,浮躁会使你失去很多。
在学习过程中,我很努力地使自己保持心理的平静,从基础学起,甚至是一些看上去完全没有必要的基础。
同学要扎扎实实,一步一个脚印的逐步学习,不要想着一步登天。
不然我问他的时候,他跟我讲的我也都不懂,这样对我也没用。
要多查API,它是Java编程的基本方法,也是编程过程中所不断利用的资源。
Java的学习过程不仅仅是基本语法的学习,更多的是去学习和掌握它所提供的API类库。
对于所接触到的类,方法,都去仔细去阅读文档的说明,再用自己编写的实例去此时一下。
而且不要只看而不练,学好java靠的还是实践,在一周两节的实验课要认真编程,不懂问同学或问李老师。
只有理论和实践相结合才能真正掌握只是和技能。
而且还要懂得运用百度和谷歌,遇到问题可以先搜索一下,实在不懂再找同学。
理论学习。
通过对理论的学习,尽量了解新知识的概念;学习之后只是粗略的了解概念,不能和实际很好的结合。
根据理论学习的知识,考虑在什么场合下可以应用这个新知识,哪些地方已经应用了这个概念,建立对新知识的感性认识。
java是一种面向对象的操作语言,必须要明白这点,才能从总体上把握java。
学习编程,首先要从分析别人的代码开始,明白他们的思路,认真分析,在学习的过程中一定要动手做、写代码,九比如说老师布置的试验作业,一定要自己做,不能抄同学的,首先不是为了应付老师,而是要让自己真正懂得java,这样慢慢的,以后的试验自己就又实力去做。
学习java不是抱一本书看看就行。
很多东西和体会必须自己动手才能真正属于自己,实践失最重要的。
而且还可以从实验中,体会到编程的乐趣,感受到自己做好一个程序,然后运行出结果,失很有成就感的
c语言实验报告心得
c语言实验心得:1、只有频繁用到或对运算速度要求很高的变量才放到data区内,如for循环中的计数值。
2、其他不频繁调用到和对运算速度要求不高的变量都放到xdata区。
3、常量放到code区,如字库、修正系数。
4、逻辑标志变量可以定义到bdata中。
在51系列芯片中有16个字节位寻址区bdata,其中可以定义8*16=128个逻辑变量。
这样可以大大降低内存占用空间。
定义方法是: bdata bit LedState;但位类型不能用在数组和结构体中。
5、data区内最好放局部变量。
因为局部变量的空间是可以覆盖的(某个函数的局部变量空间在退出该函数是就释放,由别的函数的局部变量覆盖),可以提高内存利用率。
当然静态局部变量除外,其内存使用方式与全局变量相同;6、确保程序中没有未调用的函数。
在Keil C里遇到未调用函数,编译器就将其认为可能是中断函数。
函数里用的局部变量的空间是不释放,也就是同全局变量一样处理。
这一点Keil做得很愚蠢,但也没办法。
7、如果想节省data空间就必须用large模式。
将未定义内存位置的变量全放到xdata区。
当然最好对所有变量都要指定内存类型。
8、使用指针时,要指定指针指向的内存类型。
在C51中未定义指向内存类型的通用指针占用3个字节;而指定指向data区的指针只占1个字节;指定指向xdata区的指针占2个字节。
如指针p是指向data区,则应定义为: char data *p;。
还可指定指针本身的存放内存类型,如:char data * xdata p;。
其含义是指针p指向data区变量,而其本身存放在xdata区。
以前没搞过C51,大学时代跟单片机老师的时候也是捣鼓下汇编,现在重新搞单片机,因为手头资料不多,找到一些C51的程序,发现里面有这些关键字,不甚明了,没办法只好找了下,发现如下描述:从数据存储类型来说,8051系列有片内、片外程序存储器,片内、片外数据存储器,片内程序存储器还分直接寻址区和间接寻址类型,分别对应code、data、xdata、idata以及根据51系列特点而设定的pdata类型,使用不同的存储器,将使程序执行效率不同,在编写C51程序时,最好指定变量的存储类型,这样将有利于提高程序执行效率(此问题将在后面专门讲述)。
与ANSI-C稍有不同,它只分SAMLL、COMPACT、LARGE模式,各种不同的模式对应不同的实际硬件系统,也将有不同的编译结果。
在51系列中data,idata,xdata,pdata的区别data:固定指前面0x00-0x7f的128个RAM,可以用acc直接读写的,速度最快,生成的代码也最小。
idata:固定指前面0x00-0xff的256个RAM,其中前128和data的128完全相同,只是因为访问的方式不同。
idata是用类似C中的指针方式访问的。
汇编中的语句为:mox ACC,@Rx.(不重要的补充:c中idata做指针式的访问效果很好) xdata:外部扩展RAM,一般指外部0x0000-0xffff空间,用DPTR访问。
pdata:外部扩展RAM的低256个字节,地址出现在A0-A7的上时读写,用movx ACC,@Rx读写。
这个比较特殊,而且C51好象有对此BUG,建议少用。
但也有他的优点,具体用法属于中级问题,这里不提。
三、有关单片机ALE引脚的问题 单片机不访问外部锁存器时ALE端有正脉冲信号输出,此频率约为时钟振荡频率的1\\\/6.每当访问外部数据存储器是,在两个机器周期中ALE只出现一次,即丢失一个ALE脉冲.这句话是不是有毛病.我觉得按这种说法,应该丢失3个ALE脉冲才对,我一直想不通是怎么回事,希望大虾们帮帮我.小弟感激涕零.答:其他所有指令每6个机器周期发出一个ALE,而MOVX指令占用12个机器周期只发出一个ALE 四、如何将一个INT型数据转换成2个CHAR型数据
经keil优化后,char1=int1\\\/256,char2=int1%256或char1=int1>>8,char2=int1&0x00ff效率是一样的。
五、在KEIL C51上仿真完了,怎样生成HEX文件去烧写
右键点项目中Target 1,选第二个,在OUTPUT中选中CREAT HEX 六、typedef 和 #define 有何不同?? typedef 和 #define 有何不同》》》 如typedef unsigned char UCHAR ;#define unsigned char UCHAR ;typedef命名一个新的数据类型,但实际上这个新的数据类型是已经存在的,只不过是定义了一个新的名字.#define只是一个标号的定义.你举的例子两者没有区别,但是#define还可以这样用#define MAX 100#define FUN(x) 100-(x)#define LABEL等等,这些情况下是不能用typedef定义的 七、请问如何设定KELC51的仿真工作频(时钟) 用右键点击左边的的target 1,然后在xtal一栏输入 八、不同模块怎样共享sbit变量,extern不行? 把SBIT定义单独放到一个.H中,每个模块都包含这个.h文件 九、C51中对于Px.x的访问必须自己定义吗
是的。
如sbit P17 = 0x97;即可定义对P1.7的访问 十、SWITCH( )语句中表达式不可以是位变量对吗
可以用位变量:#include#includevoid main(){bit flag;flag=0;switch(flag){case '0':{printf(0\\\ );break;}case '1':{printf(1\\\ );break;}default:break; }}bit 变量只有两种状态,if 语句足够啦,!!! 十一、const常数声明占不占内存 const 只是用来定义“常量”,所占用空间与你的定义有关,如:const code cstStr[] = {abc};占用代码空间;而如:const char data cstStr[] = {abc};当然占用内存空间。
另外,#define 之定义似乎不占用空间。
十二、philips的单片机P89C51RD+的扩展RAM在C51中如何使用
试一试将auxr.1清0,然后在c语言中直接声明xdata类型的变量 十三、BUG of Keil C51 程序中用如下语句:const unsigned char strArr[] = {数学};结果发现strArr[] 内容为 {0xCA,0xD1,0xA7},真奇怪
凡是有0xfd,则会通通不见了,所以只能手工输入内码了,例如 uchar strArr[]={0xCA,0xfd,0xd1,0xa7}(用Ultraedit会很方便)。
十四、Keil C51中如何实现代码优化
菜单Project下Option for target Simulator的C51.看到Code optimization了吗
十五、请教c的
和 ~ 符号有甚区别
是逻辑取反,~是按位取反。
十六、c51编程,读端口,还要不要先输出1
我怎么看到有的要,有的不要,请高手给讲讲,到底咋回事
谢了要输出1的,除非你能保证之前已经是1,而中间没有输出过其他值。
十七、当定时器1(T1)用于产生波特率时,P3^5还是否可以用作正常的I\\\/O口呢
p3.5完全可以当普通的io使用 十八、C51中 INT 转换为 2个CHAR
各位高手:C51中 INT 转换为 CHAR 如何转换诸如:X = LOW(Z);Y = HIGH(Z);答: x=(char)z;y=(char)(z>>8); 十九、如果我想使2EH的第7位置1的话,用位操作可以吗
现在对位操作指令我一些不太明白请各位多多指教:如 SETB 07H 表示的是20H.7置1,对吗
(我在一本书上是这么看到的)那么如果我想使2EH的第7位置1的话,象我举的这个例子怎么表示呢
谢谢
SETB 77Hsetb (2eh-20h)*8+7 20h-2fh每字节有8个可位操作(00h-7fh),其它RAM不可位直接操作 二十、char *addr=0xc000 和char xdata *addr=0xc000有何区别
char *addr=0xc000;char xdata *addr=0xc000;除了在内存中占用的字节不同外,还有别的区别吗?char *addr=0xc000; 是通用定义,指针变量 addr 可指向任何内存空间的值;char xdata *addr=0xc000; 指定该指针变量只能指向 xdata 中的值;后一种定义中该指针变量(addr)将少占用一个存储字节。
uchar xdata *addr=0xc000;指针指向外ram;如果:data uchar xdata *addr=0xc000;指针指向外ram但指针本身存在于内ram(data)中以此类推可以idata uchar xdata *addr=0xc000;pdata uchar xdata *addr=0xc000;data uchar idata *addr=0xa0;......... 二十一、while(p1_0)的执行时间
假设,P1_0为单片机P1口的第一脚,请问,while(P1_0){P1_0=0;}while(!P1_0){P1_0=1;}以上代码,在KEIL C中,需要多长时间,执行完。
能具体说明while(P1_0)的执行时间吗
仿真运行看看就知道了,我仿真了试了一下,约14个周期 二十二、怎样编写C51的watchdog程序
各位大虾,我用KEIL C51 编写了一个带外部开门狗的程序,可程序无法运行起来,经过查找,发现程序在经过C51编译后,在MAIN()函数的前部增加了一端初始化程序,等到进入主程序设置开门狗时,开门狗已经时间到,将我的程序复位了,请问我怎样才能修改这一端初始花程序,使他一运行,就设置开门狗
可以在startup.a51中加入看门狗刷新指令,当然用汇编,然后重新编译startup.a51,将他和你的程序连接即可。
新的startup.a51会自动代替系统默认的启动模块。
二十三、keil C51 怎样把修改的startup.a51 加到工程文件中 直接加入即可注意不要改动?STACK,?C_START,?C_STARTUP等符号。
startup.a51直接加入项目,不用修改也可。
可在内面自己修改汇编的一些限制或堆栈指针。
二十四、关于波特率的设置 我在设定串口波特率时发现一个问题:在晶体震荡器为11.0592MHz时,若设9600BPS的话,TH1=0XFD,TL1=0XFD,而要设19200BPS的话,TH1、TL1有否变化,如果没变,为什么
如果变了,又为什么
(因为我看书上俩个是一样的),希望大家点拨。
答:当电源控制寄存器(PCON)第BIT7(SMOD)为1时波特率加倍。
TH1和TL1的值不变. 二十五、如何在C中声明保留这部分RAM区不被C使用
我不知道在C源程序中怎么控制这个,但在汇编程序中加入下面一段就行:DSEG AT 20HAA: DS 10这样C51就不会占用20H--29H了或者在c51里这样定义:uchar data asm_buff[10] _at_ 0x20; 二十六、问浮点运算问题 我在用C51时发现它对传递浮点参数的个数有限制,请问:1)参数是以全局变量的形式传递的,请问以全局变量的形式传递的参数也有限制吗
2)这种传递浮点参数的限制有多少呢
3)float*float的结果是float类型还是double类型?能否直接赋值给float类型的变量
答:由于KEIL C51的参数传递是通过R0-R7来传递的,所以会有限制。
不过KEIL提供了一个编译参数,可以支持更多参数的传递。
具体的内容见KEIL的PDF文档。
我建议你把多个要传递的参数定义到指针或结构体中去,传递参数通过指针或结构进行,这样好一些。
第3个问题回答是YES,你自己试试不就知道了。
二十七、如何在某一个地址定义ram 用_at_ 命令,这样可以定位灵活一点的地址uchar xdata dis_buff[16] _at_ 0x6020 ;\\\/\\\/定位RAM将dis_buff[16]定位在0x6020开始的16个字节 二十八、keil c中,用什么函数可以得到奇偶校验位
例如32位数据,将四个字节相互异或后检查P即可,若耽心P被改变,可用内嵌汇编。
#include unsigned char parity(unsigned char x){x^=x;if(P)return(1);else return(0);}unsigned char parity2(unsigned int x){#pragma asmmov a,r7xrl ar6,a#pragma endasmif(P)return(1);else return(0);}
java简单计算器实验报告
import java.awt.*;import java.awt.event.*;import javax.swing.*;public class 计算器 extends JFrame implements ActionListener { private final String[] KEYS = { 7, 8, 9, ÷, sqrt, 4, 5, 6, ×, %, 1, 2, 3, -, 1\\\/x, 0, +\\\/-, ., +, = }; private final String[] COMMAND = { Backspace, CE, C }; private final String[] M = { , MC, MR, MS, M+ }; private JButton keys[] = new JButton[KEYS.length]; private JButton commands[] = new JButton[COMMAND.length];private JButton m[] = new JButton[M.length]; private JTextField resultText = new JTextField(); private boolean firstDigit = true; private double resultNum = 0.0; private String operator = =; static double mr;\\\/\\\/ 记忆的数字private boolean operateValidFlag = true; JPanel panel[]=new JPanel[4];public 计算器(){ super(计算器); init(); setBackground(Color.LIGHT_GRAY); setResizable(false); setLocation(588, 250); setSize(378,214);setDefaultCloseOperation(DO_NOTHING_ON_CLOSE); \\\/\\\/窗口不能直接关闭setVisible(true);addWindowListener( new WindowAdapter() {public void windowClosing(WindowEvent e){if (JOptionPane.showConfirmDialog(null,确定退出? , 提示,2)==0){System.exit(0);}}});}private void init() { setLayout(null);for (int i = 0; i < 4; i++) { panel[i]=new JPanel();add(panel[i]);}panel[0].setLayout(new GridLayout(1,1,3,3));panel[1].setLayout(new GridLayout(1,3,3,3));panel[2].setLayout(new GridLayout(5,1,3,3));panel[3].setLayout(new GridLayout(4,5,3,3));resultText.setHorizontalAlignment(JTextField.RIGHT); resultText.setAlignmentX(50);resultText.setEditable(true); resultText.setFont(new Font(宋体,Font.PLAIN,19));\\\/\\\/设置字体resultText.setBackground(Color.white); panel[0].add(resultText);for (int i = 0; i < KEYS.length; i++) { keys[i] = new JButton(KEYS[i]); panel[3].add(keys[i]); if (i%5-3==0){keys[i].setForeground(Color.red); }else{keys[i].setForeground(Color.black);}keys[i].setVisible(true);keys[i].setFont(new Font(null,Font.PLAIN,17));\\\/\\\/设置字体keys[i].addActionListener(this); keys[i].setHorizontalAlignment(keys[i].CENTER);keys[i].setBackground(new Color(255,236,233));} keys[4].setFont(new Font(null,Font.PLAIN,13));\\\/\\\/设置字体keys[19].setForeground(Color.red); for (int i = 0; i < COMMAND.length; i++) { commands[i] = new JButton(COMMAND[i]); panel[1].add(commands[i]); commands[i].setForeground(Color.red); commands[i].addActionListener(this); } commands[0].setFont(new Font(null,Font.PLAIN,12));\\\/\\\/设置字体for (int i = 0; i < M.length; i++) { m[i] = new JButton(M[i]); panel[2].add(m[i]); m[i].setForeground(Color.red); m[i].addActionListener(this); } panel[0].setBounds(2, 0, 370, 30);panel[1].setBounds(74, 30, 298, 29);panel[2].setBounds(2,30, 70, 150);panel[3].setBounds(74,60, 300, 120);validate();}public void actionPerformed(ActionEvent e) { String label = e.getActionCommand(); if (label.equals(COMMAND[0])){ \\\/\\\/用户按了Backspace键 handleBackspace(); } else if (label.equals(COMMAND[1])) { \\\/\\\/用户按了CE键 resultText.setText(0); } else if (label.equals(COMMAND[2])){ \\\/\\\/用户按了C键 handleC(); } else if (label.equals(M[4])){ \\\/\\\/用户按了M+键 mr=mr+Double.valueOf(resultText.getText()).doubleValue();if (mr==0.0){m[0].setText();}else {m[0].setText(M);}} else if (label.equals(M[3])){ \\\/\\\/用户按了MS键 mr=Double.valueOf(resultText.getText()).doubleValue();if (mr==0.0){m[0].setText();}} else if (label.equals(M[2])){ \\\/\\\/用户按了MR键 resultText.setText(+mr);} else if (label.equals(M[1])){ \\\/\\\/用户按了MC键 mr=0.0;m[0].setText();} else if (label.equals(sqrt)) { \\\/\\\/平方根运算 resultNum = Math.sqrt(Double.valueOf(resultText.getText()).doubleValue()); resultText.setText(String.valueOf(resultNum)); } else if (label.equals(%)){ \\\/\\\/百分号运算,除以100 resultNum = Double.valueOf(resultText.getText()).doubleValue() \\\/ 100; resultText.setText(String.valueOf(resultNum)); } else if (label.equals(+\\\/-)){ \\\/\\\/正数负数运算 resultNum = Double.valueOf(resultText.getText()).doubleValue() * (-1); resultText.setText(String.valueOf(resultNum)); } else if (label.equals(1\\\/x)) { \\\/\\\/倒数运算 resultNum=Double.valueOf(resultText.getText()).doubleValue();if (resultNum == 0.0){ \\\/\\\/操作不合法 operateValidFlag = false; resultText.setText(零没有倒数); } else { resultNum = 1 \\\/ resultNum; }resultText.setText(String.valueOf(resultNum)); } else if (0123456789..indexOf(label) >= 0) { \\\/\\\/用户按了数字键或者小数点键 handleNumber(label); } else { \\\/\\\/用户按了运算符键 handleOperator(label); } }private void handleBackspace() { \\\/\\\/ 处理Backspace键被按下的事件 String text = resultText.getText(); int i = text.length(); if (i > 0) { \\\/\\\/退格,将文本最后一个字符去掉 text = text.substring(0, i - 1); if (text.length() == 0) { \\\/\\\/如果文本没有了内容,则初始化计算器的各种值 resultText.setText(0); firstDigit = true; operator = =; } else { \\\/\\\/显示新的文本 resultText.setText(text); }}}private void handleNumber(String key) { \\\/\\\/ 处理数字键被按下的事件 if (firstDigit) { \\\/\\\/输入的第一个数字 resultText.setText(key); } else if ((key.equals(.)) && (resultText.getText().indexOf(.) < 0)){ \\\/\\\/输入的是小数点,并且之前没有小数点,则将小数点附在结果文本框的后面 resultText.setText(resultText.getText() + .); } else if (!key.equals(.)) { \\\/\\\/如果输入的不是小数点,则将数字附在结果文本框的后面 resultText.setText(resultText.getText() + key); } firstDigit = false; \\\/\\\/以后输入的肯定不是第一个数字了 }private void handleC() { \\\/\\\/处理C键被按下的事件, 初始化计算器的各种值 resultText.setText(0); firstDigit = true; operator = =; } private void handleOperator(String key) { \\\/\\\/处理运算符键被按下的事件 if (operator.equals(÷)) { \\\/\\\/除法运算 ,如果当前结果文本框中的值等于0 if (getNumberFromText() == 0.0){ \\\/\\\/操作不合法 operateValidFlag = false; resultText.setText(除数不能为零); } else { resultNum \\\/= getNumberFromText(); }} else if (operator.equals(+)){ \\\/\\\/加法运算 resultNum += getNumberFromText(); } else if (operator.equals(-)){ \\\/\\\/减法运算 resultNum -= getNumberFromText(); } else if (operator.equals(×)){ \\\/\\\/乘法运算 resultNum *= getNumberFromText(); } else if (operator.equals(=)){ \\\/\\\/赋值运算 resultNum = getNumberFromText(); }if (operateValidFlag) { \\\/\\\/双精度浮点数的运算 long t1; double t2; t1 = (long) resultNum; t2 = resultNum - t1; if (t2 == 0) { resultText.setText(String.valueOf(t1)); } else { resultText.setText(String.valueOf(resultNum)); } } operator = key; \\\/\\\/运算符等于用户按的按钮 firstDigit = true; operateValidFlag = true; }private double getNumberFromText() { \\\/\\\/ 从结果文本框中获取数字double result = 0; try { result = Double.valueOf(resultText.getText()).doubleValue(); } catch (NumberFormatException e){ } return result; } public static void main(String args[]) { new 计算器(); } }



