bluefishyong | 04 三月, 2008 14:24
已经半年多做工程,没有接触过编程了
今天老师说access 存储过程的时候,我第一感觉没有啊,结果在网山一查,还真有,傻了
更新存储过程
PARAMETERS text1 Text ( 50 ), long1 Long, date1 DateTime, longId Long;
UPDATE datatable SET datatable.textfield = text1, datatable.numberfield = long1, datatable.datefield = date1
WHERE (((datatable.id)=[longId]));
插入存储过程
PARAMETERS text1 Text ( 50 ), long1 Long, date1 DateTime;删除存储过程
PARAMETERS longId Long;
DELETE *
FROM datatable
WHERE (((datatable.id)=[longId]));
查询存储过程
SELECT *
FROM datatable;
还有待于好好学习
bluefishyong | 18 十月, 2007 21:53
bluefishyong | 12 十月, 2007 16:39
或者
bluefishyong | 08 十月, 2007 14:46
bluefishyong | 08 十月, 2007 14:44
bluefishyong | 28 九月, 2007 10:10
bluefishyong | 20 九月, 2007 17:49
http://news.xinhuanet.com/food/2004-08/11/content_1758565.htm

著名的东北菜。也北京周边农家乐的常备菜品,只不过味道不一定做得很好。感觉普遍是太咸,而鸡往往炖得时间过长了,基本上到还都是榛蘑。
还是家里自己做塌实,想吃啥味道就用你喜欢的方式配料。其实,做菜并不应该太过于遵循一定之规,按家人的口味来,做家人爱吃的味道,才是家菜的真谛。
参考菜谱一:
主料:小仔鸡750克-1000克、蘑菇75克
调料:葱、姜、干红辣椒、大料、酱油、料酒、盐、糖、食用油
做法:
1.将小仔鸡洗净,剁成小块;
2.将蘑菇用温水泡30分钟,洗净待用;
3.坐锅烧热,放入少量油,待油热后放入鸡块翻炒,至鸡肉变色放入葱、姜、大料、干红辣椒、盐、酱油、糖、料酒,将颜色炒匀,加入适量水炖十分钟左右后倒入蘑菇,中火炖三四十分钟即成。
bluefishyong | 01 九月, 2007 17:33
bluefishyong | 31 五月, 2007 10:32
在CSDN论坛(http://expert.csdn.net/Expert/topic/1487/1487604.xml?temp=.133526)上看到下面这篇文章。作者很诚恳,说的都是切身感受。我相信名副其实的研究生肯定是存在的,不过矫枉必须过正,就来添一点过激的言论:现在的教育制度快要沦落到旧时的科举制度了,都是经世致用之学,旧时是为官,现时是为钱。为钱本身无可厚非,不过如果整个民族的眼睛里都只能容得下一个钱字,那就是一个腐朽的民族,离灭亡不远了。其实现在的教育制度还不及旧时的科举制度,因为旧时得进士出身后大都能做官,现在研究生毕业后却不见得能赚钱,要不然就不会有“多收了三五斗”之研究生版了。真真是腐朽中的腐朽,登峰造极了。
经查,这篇文章是吴苾雯女士在新浪的文化频道上刊登的长篇连载《“逃离”大学》(http://cul.sina.com.cn/liter/102.html)中的一节。我在大学时也曾有过一次失败的逃离,时过境迁,如今又迂回到当年的歧路,这次是撞了南墙也不会回头了。
我一直都不太愿意提起我的研究生学历和硕士学位。这不是谦虚,是有点儿心虚。
我是国家计划内招生的全日制硕士研究生,可在实际工作中,我感觉不到自己这个硕士比人家本科生高明到哪里去,虽然学校给我们制订的培养目标是本专业内的高级人才。
回想起研究生期间的学习,有很多遗憾。
在读研之前,我对自己的研究生生活满怀憧憬:即将就读的学校和学科在国内很有名气,拥有一流的专家学者队伍;研究生的学习非常自由,我可以大量选修自己感兴趣的课程,拓展知识结构;可以彻底摆脱记笔记、背笔记、考笔记那种学习模式的折磨,跟讨厌的考试、分数说“拜拜“。
可是一周的课上下来,我感觉又回到本科时代。
按规定,读研的3年里,我们要修满58个学分。可是在这期间,有一个学期要实习,最后一年要做论文找工作,也就是说,大部分学分要在1年半的时间里修完,这就意味着我的时间几乎要全部用在上课上。更不可思议的是,这50多个学分几乎都是必修课。
我们的课程由公共课、学科基础课、方向专业课和方向选修课4部分组成,前3部分是必修,而所谓的选修课,也是限制选修,必须得学。
对这样的培养计划,导师们也意见很大,认为课程太多,学生根本就没有时间读书、做研究。可是意见归意见,想法归想法,培养计划不变。
第一门课是公共课。我以为老师会布置一些书目,大家回来自己读书。一上课,发现还是老师讲,学生记的老套路。看着老师在讲台上讲得口干舌燥,同学在下面低着头匆匆记录,与读本科时并无两样,我感觉又回到了本科时代。
对专业课我也深深失望。首先,专业课课程设置和本科大量重复,没有拉开差距,连课程的名称都差不多。本科学的是中国新闻史,现在叫新闻史研究;本科时叫新闻编辑学,现在叫新闻编辑学研究。虽然后面加了“研究“,但内容没有多少差别,只不过细化了些。比如,新闻摄影研究,老师讲的还是照相机的结构、成像原理、感光片的种类这些基础知识。中国新闻史研究,老师居然从新闻的起源讲起。且不说我这种专业出身的,就是那些跨专业学习的同学经过入学考试,对这些内容也已经烂熟于胸。
不但如此,授课内容陈旧、老化,跟社会现实几乎没什么关系。人类已进入21世纪,新闻传播业已进入一个巨变的时代,可是学的课程中,有相当一部分课程还在重复那些讲了几十年的东西。新闻评论学研究,关注的还是19世纪末20世纪初那些政论家和他们的作品,时代背景、作品风格、写作特点、主题思想不厌其烦。梁启超的评论确实写得漂亮,我们应该有了解,可是花大量的时间去总结、记忆他的作品有什么特点、是什么风格,有多大的实际价值呢?更何况,这些知识在新闻史的课堂上,在任何一本研究梁启超的著作里都有论述。这种重复学习又有多大必要呢?新闻评论和时代是紧密联系的,为什么我们不去研究一下当代新闻评论新的发展趋势和其承担的功能呢?
现在连中小学都提倡研究性学习,我们的大多数课却还是以老师讲授为主。有一门课主要是介绍名记者和他们的报道作品,按说,这门课完全可以让学生选择自己喜欢的记者进行研究,然后互相交流心得和成果,再一起研讨,既锻炼大家的科研能力,又有思维的碰撞和交流。可是,这门课的教授方式还是老师介绍、学生记录,考试考笔记。
这种课听起来不但乏味而且收获甚少。到了第二学期,逃课的同学越来越多。大家各忙各的,“出国派“时间用在考托考G上,“实践派“整天忙着在外面兼职打工,既锻炼实践能力,又解决生活费用。少数立志搞学术研究的同学,精力也没放在课堂上,而是转移到了图书馆。
我开始失望,我问自己,读研到底有什么意义,如果仅是为了一纸文凭,浪费这3年的时光值不值得?
导师是什么,导师应该是引导我们走进学术研究之门的人,应该是经常能给学生以指导的人,应该是经常与学生进行学术讨论,学术切磋的人。可实际上,又有多少人能从导师那里得到切实的指导呢?且不说导师自身的研究水平和能力如何,导师有没有时间和学生交流探讨都成问题。
我的大学同学晓寒,在读研究生的3年里,和导师的每一次交流都是逢年过节在饭桌上进行的。晓寒的导师带了一群研究生,自己又有行政职务,根本就无暇顾及每个学生。有时候在外面遇见学生,拍着学生的肩膀连声说“你好,你好“,却叫不上名字。
我有幸遇到了一位认真严谨的导师,还不时地抽查我的读书笔记,或是要我汇报生活和学习情况。不过,他老人家也经常感慨,“哎,事情太多了,没有多少时间管你,主要靠你自己学。想当年,我带你大师兄时,每两个星期就要谈一次话。“最近,打电话问候导师,导师抱怨说,他现在带的学生比我那时多了一倍,“到毕业的时候,连每个人的论文认真看一遍的时间都不够“。
近年来,我国研究生教育规模扩大,招生人数以每年30%的速度递增。可是研究风气淡薄,研究生的思考能力普遍下降,却已是不争的事实。
按照培养计划,每个学年我们都要写一篇学年论文,这是培养科研能力的一个重要环节,可据我所知,我们班有一半同学的学年论文都不了了之。我恰好当时帮老师做了两个课题,最后就当做了学年论文。
毕业论文,应该是检验学生是否达到培养目标的重要依据之一。可是现在,毕业生论文大都是粗制滥造之作,既无新的创见,又无学术价值。
我一位师姐关于第四媒体的硕士论文被答辩委员评价甚高。你知道她用多长时间写的吗?一个星期。她一直忙着联系出国,哪有时间专注于论文,她是在网上找的资料,“再找一个巧妙的角度,把材料组织好。“
这位师姐说,答辩委员都是我导师亲自请的,能为难我吗?她还说,“他们都不太了解因特网“。
那时,我对师姐的话半信半疑。直到自己走过一遍后,才知道,硕士论文,真的也就是那么一回事儿。
到了研三,大家忙着出国、忙着找工作,论文只能凑合。在校图书馆,我查阅了不少学长的论文,有的水平真不敢恭维,简直就是资料的堆砌,有些连错别字都没有改过来。尽管如此,绝大部分论文都能顺利通过。没有哪位导师会卡自己的学生。论文的评阅人和答辩委员一般都由导师选定,答辩时,答辩委员们也会提一些问题、挑一些毛病,但最后的结果一定是“同意授予某某同学硕士学位“。在外面等候的导师也就进来表示感谢,然后大家共赴学生准备好的宴席,皆大欢喜。
说实话,我们也想好好做一篇论文,毕竟是对自己3年研究生学习生活的总结,可确实身不由己。我的论文着手比较早,开始也下了一些功夫。研三暑假一开学,我就天天泡在图书馆里查资料,也做了一些调研。但一个半月之后,随着校园招聘会的开张,我就踏上了求职路,论文只好暂时放下。
12月份,在导师的催促下,草草列了一个提纲,做了开题报告,但元旦前后正是招聘高峰,几乎所有的时间和精力都用在应付大大小小的招聘考试上,论文再次搁置。
春节之后,工作还没有着落,只好一边参加各种考试,一边写论文,直到4月中旬才把论文初稿交上去。这在我们班还算是比较早的,有位同学5月份才动笔,论文的质量可想而知。
回想我的研究生生活,要说一点收获都没有也不客观,自己的逻辑思维能力、分析问题的能力还是比以前有了很大提高,但是,自认为和研究生的培养目标距离很远。我有自知之明,反正我不是什么高级专业人才。
看了这位研究生的信,我不由想起一个很久以前发生在美国校园的故事。
1908年秋天的一个早晨,正在哈佛读二年级的李普曼,忽然听到有人敲他的房门。他打开门,发现面前站着一位银须百发的老人。他愣住了,因为他发现这位老人是哈佛最著名的导师--哲学家威廉.詹姆斯。
威廉.詹姆斯笑着对他说道:“我想我还是顺路来看看你,告诉你我是多么欣赏你写的关于温德尔的文章。“
原来,李普曼在哈佛大学校刊上发表的一篇关于温德尔的文章被威廉.詹姆斯教授看到了,他是来向李普曼表达他的欣赏之情的。
从此后,大学二年级学生李普曼成了詹姆斯教授家的常客,每周四上午11点,他都来到教授家和他一起喝茶,他们妙趣横生的谈话涉及政治、社会、伦理宗教等各个领域。和这样的智者谈话让李普曼获得了极大的鼓励和精神上的收获。他在给父亲的信中写道:“这(与詹姆斯的谈话)是我在哈佛的生活中最了不起的事情。“
我还想起很久以前发生在北大校园的一个故事。
1918年的一天,两个乳臭未干的年轻人傅斯年和罗家伦来到了大学者胡适的家,与他探讨“文学革命的种种主张“。刚开始时,两个学生还“客客气气地向胡教授请教“,后来熟悉了,师生之间的讨论变得“最肆无忌惮“,常常争论得面红耳赤。这种自由的讨论和平等的对话,给当时的傅斯年等人带来极大的影响。这以后,他们与胡适保持了终生的友谊。
说到北大,还想起了那位铮铮铁骨的马寅初校长。听说他当年对学生讲话时,常用“兄弟“自称,把自己与学生看作平等的交流对象,甚至可以与学生一起喝酒骂人。
这些故事透露出一种久违的信息--大学存在的理由在于:它联合学生和老师共同对学问进行富有想象的研究,以保持知识和火热的生活之间的关系。大学是传授知识的地方,但它是富有想象力地传授知识,而决不应该是批发知识的场所。
正是由于缺少这种富有想象力地传授知识的环境与氛围,大学成了令许多年轻人失望的地方。他们怀着热望走进大学,潜心地寻找理想并时刻准备得到它,但是他们从教师那里得不到多少有益的启示,于是,他们中有的人感到理想的缥缈和希望的破灭以致无所适从,有的人则随波逐流、玩世不恭。
一位同仁问:你知道研究生究竟在研究什么吗?
他说,我的一位读研究生的朋友,一年级跳舞谈恋爱,在兴奋状态中过了一半,剩下一半时间用来对付几篇学期论文,应付公共课考试。二年级跑到公司打工,所从事的业务与专业毫不相干。大半年下来,一套行头都换了,俨然一个小款。三年级,慌慌张张准备论文开题报告,年刚过,又要出去为找工作奔忙。我问他,这样过,哪有时间读书、写作?他不以为然地说,现在很多人都这样,读研不就是为了找个好工作?搞什么研究?写文章不都是东拼西凑,毫无价值的吗?
不仅他,与他同一级的其他几位研究生也是如此,大部分时间用来与书商合作“攒书“,宿舍成了作坊,都三年级了还迟迟未能发表一篇学校规定的资格论文。另外几位则在拼命准备托福考试。……
有人甚至尖锐地抨击目下大学生是“有智商,没有智慧;有前途,没有壮志;有雄心,没有烈胆;有文化,没有教养;有知识,没有思想;有眼光,没有见识。“而“硕士不硕,博士不博“,也似乎不足为怪。
上海学者许纪霖感慨地说:“我做了将近20年的大学教师,现在的博士研究生,只相当于过去的硕士生;现在的硕士生只相当于过去的本科生。“
正如一位学者指出的那样,硕士学位本身已不再是学术有造诣的标志,而仅仅意味着能过上一种收益可观的生活。这无疑是高等教育的退化和悲哀。
今天,不难看到,在一群又一群应试高手和创新低能儿被批量生产出来的同时,研究生教育所固有的理念和初衷也正在遭到破坏,无论是本科生、研究生,还是博士生,他们又有几人能无愧地说“我是合格的毕业生“。
他们也许谁都不想这样混日子,谁都不想做一个腹中空空的人。但是为什么大学校园里会弥漫着这种浮躁、浅近、轻飘的学风?为什么偌大的校园难以放下几张平静的书桌?
那位学新闻的研究生羞于自己是研究生,一位刚走出大学校园的理工科学生却羞愧自己所受到的大学教育。
他说:“我的大学是一所理工大学,尽管校方在介绍里称之为综合性大学。事实上是,我们除了应付考试,文、史、哲、经、法的书籍一概拒之门外。
大学“重理工轻人文“的程度远超过我的想象,而且从校方到学生似乎也没人觉得有什么不正常。回想我4年的大学生活实在令我惭愧得无地自容。每一天都在愚蠢地打发时间:背烂了的英语单词一个也没记住,寒冷的夜里无休止地自习却依旧什么也不懂。身边的人更使我打不起精神来。
几乎没有人读过《唐诗三百首》,也不曾读过诸子的任何一家,尽管他们都有很高的GPA;没有人看过《莎士比亚戏剧》,也没有人看完过《悲惨世界》,尽管他们的“寄托“(GRE,TORFL)都考了很高分;没有人看过《资本论》的一页,也没有人读完只短短几十页的《共产党宣言》;没有人倾心于安娜的高贵和反叛,也没有人为玛格丽特黯然神伤。
我羞愧我所受到的大学教育:它不是塑造灵魂的教育,年轻的心根本无处探索闯荡,更谈不上具备独立的人格自由地观察世界、思考世界。我只是被当做流水线上的一个产品而整齐地按统一规格打造。年轻的头脑毫无例外地被圈禁到麻木,丧失激情。
我终会离开我的大学,而同样的事情还在发生,同样的悲剧还在继续。“
有人曾质疑,为什么中国几十年的理科教育培养不出一个诺贝尔奖获得者?为什么中国的教育只能大批地培养“匠“,而很少能培养出“家“?一位留学德国的马来西亚华人,讲了一个中国留学生兵败德国考场的故事。
一位在国内接受了多年学校教育的中国学生,到德国留学后始终摆脱不了国内那一套填鸭式的学习方法。有一回他去考试,考试内容是数学概率。考试前,他把所有的计算方法一个不漏地学得滚瓜烂熟,几乎没有未曾做过的习题了,本以为可以过关斩将,考取高分。谁知道不到5分钟,他就垂头丧气地鸣金收兵了。
原来,教授画了一个书本上完全找不到的概率分布图给他(当然,这是教授杜撰的,自然界中根本不存在这种分布),要他解释是怎么回事。
他顿时晕头转向,哑口无言,只好对教授说:“您给我解一道数学题吧,我就只会解题。“
教授回答说:“那你可以走了。“
上海复旦大学一位教授去斯坦福大学讲学时,曾故意住进学生宿舍。他看到,每天下午5点以后,宿舍大楼底层的活动大厅就开始熙熙攘攘,有弹钢琴的,有唱歌的,有打桥牌的,但更多的是在闲扯(他们叫作“chat“)。在与学生的接触中他发现,那些学生并不非常用功,但接受和分析新鲜事物的能力很强,很多同他们所学专业毫不相干的事情,略加解释,就会体会其主旨。这是因为,从小学一直到大学,学校给予他们的是认识、观察和思维的能力,而不是靠记忆获得的死知识。
在今天这个越来越国际化的社会里,我们确实有必要向四周张望,确实有必要知道别人是怎么做的。让我们看一看几位归国博士眼中不同国家的高等教育:
“在美国,他们比较注重自学。教师讲的内容与教材上的差异很大。
本科生可以以科研助教的身份出入一流的实验室或研究中心,同教授们广泛进行交流;根据个人的兴趣,那些雄心勃勃的高材生们可以自行提交研究报告,在学者们的指导下,以合作或单独进行的方式展开研究,最终,个人研究成果经过相应的评价考核后,学生取得不同的学分。
在硕士研究生这个层次上,他们很重视写,一般说来,每周看完阅读材料后要写5-10页的小论文。如果是比较大的讨论课程,每学期至少要写两篇25页左右的论文,主要是对所读文献进行评论,提出自己的见解。理工科学生大部分时间泡在实验室,实验完后,要写实验报告。
到博士这个层次,上课时大部分时间用来讨论,教授的作用是引导,讨论主要是让你对读过的内容提出看法,作出批评。“
“日本的大学是通才教育,他们更注重培养学生的动手能力。从大学三年级下学期到毕业,学生有一年半的时间都在实验室,高校里有90%的实验结果是学生完成的,老师只是提供思路。日本学生在实习时,也不问什么实验目的,理论依据,而是跟着老师一块操作,几次实验做下来,什么都会了。所以,日本的学生毕业后适应性很强,什么样的工作都可以干。“
“加拿大的高等教育,一般是宽进严出。比如招研究生,不经过考试,只取决于两个条件,一是你的大学成绩,二是导师愿不愿意带。在校内,大学生有较大的自由度,选修还是必修由自己决定,但有个规定,学理科的必须选一门文科课程。“
一位教育学者指出:世界高等教育发展和人才培养模式告诉我们,对复杂的知识整合与应用的重要意义已远远超过对知识单纯的记忆和梳理;而一种创造性的实践品格正依赖于所提供的教育环境。
补充日期: 2003-02-26 01:46:54
几年前,我本科导师劝我不必竞争那可怜的保研名额,一脚踏入“实务界”,在业务中锻炼,在生活中学习,比在学校里混日子强。当时有些懊悔,看到上面文中这样的例子,以及研究生们自跌身价(也许根本就谈不上身价),以及现在求职之难。幸甚!1!
bluefishyong | 29 五月, 2007 21:08
今天一个很傻的问题看了半天,结果测试一下,原来Java基础学的不是很好。把例子帖出来,已被后看
我们在创建 Person类 Person p =new Person();
Person p1=p;
在修改P1后,p的值也随之改变。原因是p1指向p的创建的类存储空间。我们修改p1,即是修改p创建类存储空间的值,也是说值被改变。
下面是我写的一个测试例子: StrTest.java
public class StrTest{
public static void main(String [] args){
Person p=new Person();
p.a=2;
System.out.println(p.a);
Person p1=p;
p1.a=3;
System.out.println("p1:"+p1.a);
System.out.println("p:"+p.a);
}
}
class Person{
public int a=1;
}
运行结果:
2
p1:3
p:3
Press any key to continue...
bluefishyong | 24 五月, 2007 20:27
bluefishyong | 21 五月, 2007 19:28
bluefishyong | 11 五月, 2007 21:21
bluefishyong | 11 五月, 2007 21:04
今天想把Jbuilder X 下的jdk換成 1.6 ,結果出現錯誤,不支持如下的写法
ArrayList<Integer> list=new ArrayList <Integer> ();
在网上一查,结果发现要修给 Project->Project Properties...->Build->在Java设置页,将Target VM设置 Java 2 SDK,v 5.0 and later。
但是我的Jbuilder X 里面没有这一选项设置,Jbuilder 下升级jdk 没有成功
现将JBuilder2005实现重构之升级到JDK5.0- - 转载到此
JDK 5.0在语法上做许多重大的改进,虽然在低版本JDK中开发的源代码几乎可以不做任何修改就可直接运行于JDK 5.0中。但还是有必须进行版本升级的重构,这样就可以应用JDK 5.0的for和while循环、自动装/拆箱、泛型等改进功能,在使代码更加紧凑的同时,使代码性能得到优化。所以JBuilder专门为低版本提升到JDK 5.0的程序提供了3个重构功能,方便你无缝地实现升级。
1、使工程基于JDK 5.0
虽说JBuilder 2005支持JDK 5.0,但其默认的JDK版本是1.4.2,要使工程的JDK版本为5.0,你必须安装JDK 5.0,并在JBuilder下 进行相应的设置。关于JDK 5.0的详细设置我们不作过多的描述,简而言之,它主要包括以下的步骤:
1) 安装JDK 5.0(从http://java.sun.com/j2se/1.5.0/download.jsp下载)。
2) Tools->Configure->JDKs...通用指定JDK5.0的安装路径设置JDK。
3) Project->Project Properties...->在Paths设置页,将JDK设置为JDK 5.0。
4) Project->Project Properties...->Build->在Java设置页,将Language features:设置为Java 2 SDK,V 5.0(generics enabled),将Target VM设置为Java 2 SDK,v 5.0 and later。
只有将工程的JDK版本设置为JDK 5.0,才可以进行有关JDK 5.0的代码重构。
2、优化循环
JDK 5.0引入了更高效的循环,称之为JDK 5.0样式的循环,包括:
.数组遍历
.List遍历
.Iterator的for循环
.Iterator的while循环
JBuilder提供了将低版本JDK对应的循环代码转换这JDK5.0循环风格的重构方法,我们通过一个数组遍历的重构对此做说明,请看下面的低版本JDK循环代码:
代码清单 11 低版本循环样式
1. public static void arrayLoopRefactoring()
2. {
3. int[] myArray = {1 , 2 , 3 , 4} ;
4. for(int x = 0 ; x < myArray.length ; x++) {
5. System.out.println(myArray[x]) ;
6. }
7. }
将光标移到第4行的for(int x = 0 ; x < myArray.length ; x++) 中间:Ctrl+Shift+R->Introduce Foreach调出循环重构对话框:
图 22 循环重构对话框
在Loop variable name中为数组循环临时变量指定一个变量名,这里我们设置为item,按OK完成重构,JBuilder生成JDK 5.0风格循环代码,如下所示:
代码清单 12 JDK 5.0样式循环
1. public static void arrayLoopRefactoring()
2. {
3. int[] myArray = {1 , 2 , 3 , 4} ;
4. for(int item : myArray) {
5. System.out.println(item) ;
6. }
7. }
3、自动装/拆箱
每个基本数据类型如double、int都有对应的封装类Double、Integer,在低版本的JDK中,需要一些无聊的代码完成基本数据类型到对应封装类的转换。JDK 5.0的自动装/拆箱特性可以自动完成这种转换,使代码更加简洁,来看下面未用自动装/拆箱的代码:
代码清单 13 未使用自动装/拆箱的代码
1. package myrefactor ;
2. public class Jdk5
3. {
4. ...
5. public static void autoBoxingPreliminary(Integer intObject)
6. {
7. System.out.println(intObject) ;
8. }
9.
10. public static void autoBoxingRefactoring()
11. {
12. autoBoxingPreliminary(new Integer(8)) ;
13. }
14. ...
15. }
第5~8行定义的autoBoxingPreliminary()方法需要一个Integer的入参,autoBoxingRefactoring()在第12行老老实实满足了这种要求。JBuilder提供了一个非常方便进行自动装/拆箱重构的方法,打开需要做此重构的类,在编辑器的任何地方:Ctrl+Shift+R->Introduce Auto(un)boxing,JBuilder搜索当前Class文件需要自动装/拆箱的地方,一并重构。如上面的代码段进行自动装/拆箱重构后,将调用为:
代码清单 14 自动装/拆箱重构后的代码
1. package myrefactor ;
2. public class Jdk5
3. {
4. ...
5. public static void autoBoxingPreliminary(Integer intObject)
6. {
7. System.out.println(intObject) ;
8. }
9.
10. public static void autoBoxingRefactoring()
11. {
12. autoBoxingPreliminary(8) ;
13. }
14. ...
15. }
第12行直接传入8而非new Integer(8),代码工整了许多。
4、非泛型转泛型
在低版本中,集合中的对象在使用前需要进行显示的类型转换,如String s = (String)iter.next(),JDK 5.0引入了泛型的概念,加入了编译期类型安全检查,取消了强制类型转换,节省了代码,下面是大家熟悉的传统的List操作代码:
代码清单 15 非泛型的代码
1. public static void genericsArrayList()
2. {
3. List list = new ArrayList() ;
4. list.add(0 , new Integer(23)) ;
5. int total = ( (Integer) list.get(0)).intValue() ;
6. System.out.println(total) ;
7. }
将光标移到第3行(即集合定义的代码行):Ctrl+Shift+R->Introduce Generics调出泛型重构对话框:
图 23 泛型重构对话框
在Type Argument中指定一个数据类型,JBuilder已经通过分析代码默认了最适合的数据类型,一般情况下无需调整。按OK后完成泛型的代码重构:
代码清单 泛型的代码
1. public static void genericsArrayList()
2. {
3. List list = new ArrayList () ;
4. list.add(0 , new Integer(23)) ;
5. int total = (list.get(0)).intValue() ;
6. System.out.println(total) ;
7. }
注意第3行和第5行代码的变化。也许有人会指出第4行应该调整为list.add(23)才对啊?是的,只需要你调用前一小节的自动装/拆箱重构就可以完成这
bluefishyong | 05 五月, 2007 18:05
| « | 八月 2008 | » | ||||
|---|---|---|---|---|---|---|
| 一 | 二 | 三 | 四 | 五 | 六 | 日 |
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |