Java自学成才之路

Java自学成才之路
Java自学成才之路

【经典】JAVA自学之路

一:学会选择

为了就业,不少同学参加各种各样的培训。

决心做软件的,大多数人选的是java或是.net,也有一些选择了手机、嵌入式、游戏、3G、测试等。

那么究竟应该选择什么方向呢?

我的意见是,不要太过相信各种培训机构或是抢手文章的说法(包括我),当你要走向社会的时候,就不要再把自己当成学生,不要把自己的将来交给别人,学会运用自己的眼睛去观察,去了解这个世界吧。

每个培训机构都会宣传自己的好处,并不能说明大的趋势。

一些新闻文章很有可能是枪手写的,不必太过相信。

国外背景的教师和课程,未必适合你。

那么怎么才能确定自己将来的方向?如何才能从纷繁复杂、或真或假的数据世界中挖出一条路?

我讲一个通过招聘网站的观察方法。

可以到各种招聘的网站上查询信息(可以到google上查询招聘的网站),例如:

https://www.360docs.net/doc/457222242.html,

https://www.360docs.net/doc/457222242.html,

https://www.360docs.net/doc/457222242.html,

以及csdn的招聘频道等

还有一个网站也不错,https://www.360docs.net/doc/457222242.html,,综合了各大招聘网站的数据。

这些数据都是最真实不掺假的原始数据,你可以每隔一段时间搜索一次,一些规律就会被总结出来了。

比如说我在https://www.360docs.net/doc/457222242.html,中搜索java,全国大概提供了3万个职位。

然后要多翻几页,这样不仅能够看清楚大概有多少是有效的职位,而且还可以看清楚用人单位最关心的技能是什么,这个很重要,决定着你将来要花多少时间和精力在特定的知识点上,比如说swing,搜了一下,全国只有700个左右的职位,仔细读了一下,也并非全是有效的职位,花太多时间和精力在这个上面就不值得了,当然自己感兴趣或者为了研究的话另当别论。不过如果是为了快速的就业,把太多时间和精力花在很多职业生涯的前一、二年用不到的知识上就太可惜了。同时,并非某一个行业的职位数目少,就不能当作一个方向进行选择,比如.NET,我搜索到的职位数是1.6万左右,比java少,是不是就选java了呢?不一定,因为java职位虽然多,但是可能竞争者可能也多,有些方向虽然职位数不多,但是和你竞争这些职位的人数量也少,不见得就不能选择。

不过,如果某一个方向的职位数目过少,你可就要小心了,选择这样的方向风险会非常大,如J2ME。

我个人觉得java/J2EE、.net、嵌入式开发是不错的三个方向。

如果非要在java和.net中选择的话,我个人是推荐java的,原因:

1:Java能够开发linux、unix服务器上的程序

2:JavaEE和.NET在企业应用方面的关注点是差不多的,但是学习了java如果将来想转到.net上会比较简单,几天的学习然后上手开发应该是问题不大的,但是反之就不行了。

当然如果有了些经验之后,你就会发现语言或者平台不再是技术上的阻碍,一些原理性的东西学到手,然后再加上项目经验,使用什么平台,反而不是最重要的。不过如果非要用一种平台进入企业开发的领域,至少在目前,2007年9月,我推荐java。

完全可以不同意我的观点,但是无庸置疑,如果是为了就业,多到招聘网站阅读阅读职位的信息,对你将来的方向和学习是大有益处的。

选择是最痛苦的,看看《天生购物狂》中的刘青云就知道了,不过既然无法逃避,就作出自己的选择吧。

每个人都会受到别人的影响,在作出决定之前,要想尽各种办法让自己理性一些吧。这样,你的选择会离正确的方向更近一些。

二:JAVA自学路线图:

有不少的同学发信给我,和我探讨java的自学过程应该是什么样的,毕竟有很多人因为各种各样的原因不能参加培训。我试着给出自己的见解,抛砖引玉吧。

这个路线图是给那些为了就业的人准备的,如果只是兴趣,不一定照这个走。

这里只是讲了路线图,关于路线中的各个阶段,学到什么程度,如何学习等,可以参考后面的JAVA自学之路七:《路线图明细》。

首先要学JavaSE,这是无庸置疑的。

与此同时,是的,与此同时,和JavaSE的学习同步,建议大家研究一下数据结构与算法。在这儿之后,你可以选择向J2ME、或者Java GUI、Socket编程等方向努力,但是通过第一篇的办法,你可以很容易就将这方向过滤掉(永远不要忘了我们是为了就业),好吧,暂时和它们诀别,还是向着J2EE的方向前进吧。

在JavaSE完成之后,可以试着完成一些小项目,同时关注一下设计模式的内容,不必强求自己能够完全掌握各种细节,往前走吧。

掌握一种编程工具,比如说Eclipse。

数据库,可以选择使用Oracle或者MySQL开始

。JDBC,用Java连接数据库。

可以选择在这个地方切入Hibernate,也可以选择在Struts

之后。HTML CSS ,这些东西是做web项目必需的内容

。Servlet JSP,服务器端必需。

XML AJAX,新的流行趋势不能不了解。

作一些小项目吧。比如BBS、留言系统、学籍管理、商城等等,随便着一些业务逻辑比较简单的来做一做。Struts,MVC的典型应用

Hibernate,OR Mapping的典范之作。

Spring IOC + AOP,面向对象+面向切面,完善的旅程。

把以前自己的小项目加入Struts、Spring、Hibernate的元素吧。

去研究各种商业项目的业务逻辑吧,才能在你的简历中加入浓重的一笔。

EJB3.0,java在走了很多弯路后的回归之作,值得研究。

SOA,业界铁定的未来趋势,要紧紧跟随。

在后面,我会告诉你每一步的学习方法和学习重点。

三:要动手:

无论如何,请坚持不懈的动手实验!

学习Java要动手,仅仅是看和听是不能够学好编程的。总有同学来信问我们这样的问题,说:"老师我看了视频了(下载:https://www.360docs.net/doc/457222242.html,/download.html),可是怎么一动手就没有任何思路呢?" 对此,我一般都会说不要着急,如果你只是看了视频就想行云流水的话,那老师这些年的锻炼真是白费了,这么多年的苦练才能略有些行云流水的感觉,你一朝一夕就想自己能够达到,不是太奢侈了吗:)

作为编程的过来人想一下,当年自己学编程的时候是什么时候有思路的呢?至少也是照猫画虎画了一段时间之后吧,我本人是在某一个领域画虎画了上万行代码的时候才慢慢有自己思路的。就像写作文,要有自己思路总是一般来说要经过几个阶段,首先学习词汇,然后学习造句,然后大量阅读别人的文章,自己模仿着写一些,逐渐的经验积累,才能形成自己的思路。学编程,恐怕也得慢慢的来吧,只是看一看、听一听视频,是不足以学好编程的。

所以,动手吧,跟着做,一行一行的跟着敲,一个项目敲完了,比如坦克,再试着加一些自己的功能,按照自己的思路敲一些代码,收获远比干听大的多。

如果遇到,暂时对于一些思路不能理解的同学,我一般都会劝告说,动手写,先写代码,量变会引起质变的。而这种质变的确发生过不少次。

提醒一句,要理解代码思路之后再跟着敲,背着敲,千万不要左边摆着别人的程序,右边自己一个一个子母的写,这就不再是程序员了,成了打字员了。

纸上得来终觉浅,所以:别问那么多,别想那么多,动手写吧。

四:要事为先:

对待人生的任何事情都要:抓大放小,要事为先

对于一个以前从来没有接触过java的人,java无疑是庞大的,似乎每个领域都可以拓展开来都是一片开阔地,每一个领域要想深入接触到每一个细节所耗费的精力都是巨大的。这个时候大家都胸怀壮志,两眼发光的盯着每一个崭新的知识点,遇见了任何一个知识点都恨不得抠的清清楚楚,明明白白。

难道这有什么不对吗?

我的意见是,没什么大毛病,但是学习效率太低了!我们推荐的学习方式是,抓大放小,要事为先。

比如说学习J2SE的时候,学到GUI这一章,有的同学认为,既然学到这儿了,我们去把SWING细细的了解一遍吧;还有的同学,遇到了在Linux下的Shell编程,就恨不得把Shell 先学成专家才肯,或者是才敢,继续往下学习;有没有过这样的感觉,一本书的上册没有学好,觉着下册心里也没底儿,甚至非要把上册复习一遍才敢继续学习。如果你也是这样,要去看看心理医生啦,没准儿会有洁癖的毛病:)。

任何事情都要追求完美才敢继续往后进行,是一种性格缺陷

大胆的放弃一些东西吧,有失才有得,把自己有限的、宝贵的精力用在对于就业直接相关的地方,这才是最有效率的学习方式!等你参加工作,有了可持续发展的事业动力和经济基础,有时间有精力闲的没事儿干的时候,再去研究那些其它吧。

曾经有一个故事,说得是产能和产量的关系。

一个人喜欢读书,读了一辈子,无所不通,这时候要做任何工作都可以,他的产能到了极致,但是,他老了,即便每天产出大量的东西也不能维持多久了,一辈子的产量并没有多少。另一个人直接工作,忙,天天在机器旁日复一日,做了一辈子,没时间学习和进修,可以想象,产量能有多大呢。

人的一生,要锻炼产能,也要及时产出,引擎要转,也要停下来加油,这两者平衡的越好,你的贡献和产量就会越大。如果钻研的东西和产能目标(或者说近期的产能目标)无关的话,要舍得放手。

所以,对于SWING,暂时先扔在一边吧。

对于shell,对于各种协议过于详细的细节,对于喜欢的游戏编程,对于各种华而不实的效果,都暂时和它们分别吧。一切和我们的直接工作目标关联不大的东西,扔在一边或者弄清楚到足够支持下一步的学习就可以了。

那这样岂不是妨碍我成为通晓各种细节的高手了吗?

我一向不认为一个人掌握了很多很多知识点的细节就是高手了,一个人如果告诉你,回字有四种写法,你会认为他是高手吗?毫不客气的说,现在我们所教授的所有知识细节在网上或书中都可以找到,只要你肯花时间花精力去动手试,去钻研,没有什么不能掌握的。struts、spring你能掌握吗?当然能!但是如果把时间花在spring的各种细节的研究上,花在研究中国企业应用不广泛地的spring mvc上,这个精力就太浪费了,而且学习的积极性会受到打击,谁愿意整天泡在细节的蜘蛛网中挣扎不出来呢?谁愿意天天经历风雨却总是不能见到彩虹呢?

盖房子,要先建骨架,再谈修饰。

画山水,要先画结构,再谈润色。

认识一台结构复杂的机器,应该首先认清楚脉络,然后再逐步认识每一个关节。

为了应付从小学到大学的考试,我们背了各种各样的不应该提前掌握的细节,同时也养成了见到细节就抠的学习习惯。而现在,是到改改的时候了。

请在合适的时间,做合适的事情吧。

把时间和精力花在作项目上面,花在写作品以及锻炼解决问题的能力上面吧,这是迈向高手的正确的而且快速的方向。

我一直不认为一个课程提供了很多很多的细节就是优秀的价值高的课程了,掌握必要的细节,这个不含糊,至于其他,或者通过视频给出(这样可以给出更多的细节,但是不占上课时间,课上只讲重要的、必要的细节知识),或者在掌握了自学的能力后自己能够查出,这才是正途。

当你看书到某个地方暂时不理解的时候的,暂时放手吧,追求一些行云流水、自然而然的境界吧,只是不要停下前进的脚步,不要被大路旁边的支根末节干扰了你前进的行程,项目,真实的项目,这才是目的,就在不远的前方。

陶渊明读书,叫做“不求甚解”,但他是大诗人。

诸葛亮读书,总是“观其大略”,但他是大政治家。

作研究的,是在确定了方向之后才详细的研究深入的东西。

到了庐山,脉络形状扔在一边,盯着一棵棵小草、一粒粒石子的看,怎么样才能识得“真面目”?

作为应用型的人才,是研究回字的n种写法还是抓紧时间向着主要应用的方向努力,请自己作出抉择。

以项目驱动自己的学习吧,当把握了技术的脉络之后再去补充细节的研究,是正途。

这辈子就不研究其他的方向了吗?

当然要研究!但是在将来合适的时间再说吧。

所以,抓大放小,要事为先!

那么,在JAVA的这些课程中,哪些才是大,才是要事呢?请继续读下去。

五:问题解决之道:

既然是学习,就不可能不遇到问题。

既然是自学,就没有方便的和老师探讨的机会。

那么,遇到问题之后,环境配不通,程序调不过,运行不正常,遇见这些恼人的问题的时候,该怎么办呢?

首先我要恭喜你,遇见问题,意味着你又有涨经验的机会了,每解决一个问题,你的JAVA 经验值就应该上升几百点,问题遇到的越多,知识提升的越快。

但是总是解决不了也是很恼人的,怎么办呢?

我一般要求我们的学生都是这样来进行的。

当你遇到一个问题的时候:

1:要仔细的观察错误的现象,是的,要仔细

有不少同学的手非常快,在编译一个程序的时候,报了一大堆的错误,扫了一眼之后就开始盯着代码一行一行的找,看清什么错误了吗?没有!有的时候安装软件出问题了,一个对话框弹出来说出错了,马上举手问老师:“不得了了,出错了,出错了”。

“什么错误?”

“还没看呢?”

这都是典型的不上心的方法!请记住,学习编程并不是一件很容易的事情,自己首先要重视,要用心才可以。

在开发中,仔细观察出错信息,或者运行不正常的信息,是你要做的第一件事。

读清楚了,才能在以后的步骤中有的放矢,哭了半天,总要知道哭的是谁才成。

这里又分三种情况:

A:错误信息读懂了,那么请进入2步:要仔细思考问题会出在哪些环节

B:没读懂,愣是一点没看懂,进入第4步吧:google

C:读了个半懂,有些眉目但是不太能确定,第2步和第4步结合着来。

2:要仔细思考问题会出在哪些环节(重要)

当你读懂了一个问题之后,要好好的思考这个问题可能会在哪些环节上出错。

一辆汽车从总成线上下来,车门子关不上!

哪错了?你怎么查?

当然是顺着生产线一站一站的查下来。

程序也是一样的,也是一系列语句完成后产生的结果。

写一个网络程序,总是发现服务器端打印不出接收的数据,有几个环节会出错?

仔细分析这个现象的环节:

客户端产生数据->按“发送”按钮->发送到服务器->服务器接收到后打印

这几个环节都有可能会出错:

有可能客户端根本就没产生数据,有可能发送按钮按下去后根本就没发出去,或者发出去的不是你产生的东西,或者根本就没连接网络,或者发送出去服务器没有接收到,或者接收到之前就打印了等等等等。

学着去这样仔细的分析程序的环节和这些环节可能会产生的问题,你的经验值定然会大幅度快速的提升,这样做很累人,但是一件事情如果做下来一点都不累的话,这个东西还有价值吗?

在网页A输入了一个人的名字,提交到B,首先存储到数据库,然后再读出来,发现乱码!怎么办?当然是分析环节:

客户输入->HTTP发送->B接收->存储到数据库->读出->展现到网页

每个环节都可能出问题,怎么才能知道哪里出的问题?继续往下读。

3:如何定位错误(重要)分析清楚有哪些环节之后,下一步就是定位到底什么环节出错了。定位有以下三种办法:

A 打印输出,比如java的System.out.println(),比如js的alert(),这种办法常用,必须掌握

B Debug,可以参考我们的视频《坦克大战》,详细讲了Eclipse的调试。

C 删掉一部分调试一部分,也就是去掉一部分的功能,做简化,然后调试剩下的功能,JSP 和常用。可以参考我们的视频《BBS》等

这些我说的比较简单,详细了解的话请关注以下我们的视频吧,在近期会逐步的将一些知识点的视频进行免费的公布,https://www.360docs.net/doc/457222242.html,/download.html

4:如果还不行,google吧

还查不出来?恭喜你,你遇到的错误是值得认真对待的错误,是会影响你学习生涯的错误,问一下google或者百度吧。照着下面的方法查查看。

一般来讲,搜索引擎可以搜到各种知识点,我曾经跟同学们开玩笑说:“学会了怎么google 或者baidu,其实没必要跟老师学了,自己全都搞懂了,尚学堂是没必要来的。”当然,只是玩笑,培训的作用有三个:

A:系统化知识

B:真实项目锻炼经验

C:少走弯路,节省时间

不知不觉开始做广告了,请原谅,处其位谋其事,总得为尚学堂说点什么:)

言归正传,如何查搜索引擎?

先精后粗,首先先进行尽量精确的查找,比如一个错误,SocketException,你怀疑它是在

connect()方法出的问题,那么当然是选这样的关键词java connect SocketException

先中后英,本着以解决问题为主的想法,练习英文还是先放在一边吧,首先应该在中文网页中查询,还不行的话,搜索英文的吧,最近的尚学堂课程中会带大家阅读英文的书籍。有很多东西就像一层窗户纸,远看灰蒙蒙怪唬人的,你壮着胆子一捅,它就破了。阅读英文的书籍就是如此,不是想象中的那么困难:)宁可在沙场上战死,也不能被吓死不是吗:)

信息筛选,搜索出来的结果不见得能够完全匹配,建议大家多阅读前几页的搜索结果,多打开几个网页看看,不过,我的经验是超过3页一般就没意义了,所以超过3页还没有找到合适的答案,或许应该调整一下关键词,或者放粗整个搜索的结果了。

经常的进行知识难点的查询,如果一个问题牵扯的面比较广,就干脆到网上搜索一些相关的专题,比如“java 乱码mysql”“oracle 创建用户”等等,如果有必要,不要犯懒,勤动手写一些小小的测试程序,来弄明白知识点的细节。这也是涨知识的重要的途径。

5:什么?还不行?那么就BBS吧

如果实在还不行,就到BBS上面问一问高手吧。

到哪个BBS上?

google或者百度不就行了么:)关键词“java论坛”“java bbs”

然后在搜索结果里好好的看看那些活动频繁的论坛,以后就是你经常光顾的地方了。https://www.360docs.net/doc/457222242.html,就很不错。

向别人提问是非常需要技巧的!

曾经有人问我这样的问题:“请问如何才能学好java呢?”

这个要求太泛泛了。

还有人给我一段代码甚至jar包也寄过来,然后说老师的我的代码中有个错误您帮我查查:(

我没有办法去花大量的时间建立环境去调试一个还不知道存在不存在的错误!

还有人在BBS上问这样的问题:“是否有人能帮我完成一个完整聊天的程序?请帮我写一个登陆模块吧!”

这个要求有些过分了,有人帮你做是你的运气,没有人帮你是正常反应。

向别人提问,应该首先确定你已经做了自己应该做的事,简单说是我前面列举的1,2,3,4步你都作过了,然后再求助于人。不要没有经过认真思考就草率的向别人提问,自己也不会有长足进步的。

那我该怎么样向别人提问呢?

在google或百度搜索《提问的智慧》,你会找到答案。

在这里我给出一个链接https://www.360docs.net/doc/457222242.html,/IndexPage/SmartQuestion.aspx,磨刀不误砍柴功,先花点时间去阅读一下吧。

得到别人的回答,要懂得感恩。

不需要去写信感谢,不需要支付费用,不需要那些花言巧语,做到下面这一点就够了:

当你逐步成为高手的时候,要回答别人在论坛上提出的问题,有时间有精力的前提之下!

6:还解决不了?问老师吧,这个只能是在你参加了培训的前提下了。7:还解决不了?天哪,是不是思路从根上就搞错了?写信给我,让我也学习一下,共同进步吧。mashibing2004@https://www.360docs.net/doc/457222242.html,

六:项目的自学:

现在就业竞争的激烈程度已经远远高于当年了,记得我当年毕业时,一个会编程的毕业生站到台上,大声问道:“我会ASP,月薪5000有没有人要?”台下的企业马上哗的举起一大片手:"我要我要!"

那时没有任何项目经验也会有人提供学习的机会:)

这种好日子恐怕一去不复返了(有些夸张,但无疑当时找一份不错的工作是比现在要容易的多)

而现在,即便是各种必要的知识你掌握的差不多了,但还有一座大山横在你的面前,那就是-项目经验。

有经验的程序员都知道,学习编程的最有效率的方式,恐怕就是把你扔到一个项目组,连滚带爬的做下一两个项目来,你马上会发现所有的知识点全都连到一起了,不再是分散的,而是形成一个整体了。那种感觉是仅仅深入钻研知识点而不写真实项目的人所不能体会的。一个项目就是一根绳子可以把大片的知识串到一起。

如果想锻炼实际开发的能力而不仅仅是背诵或者了解一些知识点,如果想成为真正的好手而不仅仅是背诵“回”字有几种写法,那么,作项目吧!

目前,各种编程的知识点变得越来越容易掌握,按照《JAVA自学之路五:问题解决知道》中的各种办法也可以逐步积累自己知识的广度和深度,那现在什么才能够体现水平的不同?当然是项目经验。

目前,尚学堂的课程已经超越了知识点的研究和罗列,我们将在未来的时间里逐步公布各个知识点的视频,包括SSH、EJB等,这样做有两个好处:首先自学的同学可以免费得到原来商业培训的内容,这样起码可以节省一些时间,省一些力气。其次尚学堂自己可以更加专注于项目上。

目前尚学堂的项目写作占了课程50%左右的比重,尚学堂的项目也早已经超越了简单的MIS 系统的概念,逐步的成为综合了搜索引擎、工作流、SCA/SDO、Linux/UNIX、大型数据库系统、设计模式、架构模式、负载均衡等各种深层应用的综合大型项目并且采用手把手式的教学方法,做的更加的深入和细致,从现在看效果相当好,最近142班的就业就完全证明了这一点(了解142的就业情况),我们的计划是最近逐步将项目比重提升到70%以上,相信效果会更好。签于公司的规定,我们并不能将所有的项目实战都录制成视频来公布,但是已经公布的项目实战也是非常的有价值的:(https://www.360docs.net/doc/457222242.html,/download.html) 1:Chat & Tank系列

2:BBS

3:Shopping(近期公布)

那么如果自学我们应该怎么样才能学习项目的开发呢?

一个比较有效的办法是,可以在现有项目的基础上做的更深入一些,比如在你按照视频完成了BBS之后,可以增加一些其他的功能,例如注册/积分/精华/搜索/贴图等等,在完成了Shopping之后,可以增加一些评论/排行/统计/存货等等方面的业务逻辑,尝试用自己的技

术将他们作出来,这样既积攒了项目经验,又记住了知识点。

那么如何才能确定我要写什么样的业务逻辑呢?

应该讲这对于一个初学者是非常困难的,一些简单的系统,比如说BBS、Shopping、图书管理等等,它们的业务逻辑很容易确定,去浏览和参考一些现成系统的功能,很容易就能了解了。但是对于商用的大型系统,光是了解业务逻辑本身就会花费大量的精力,如果有时间有精力有财力的话,还是建议考虑一下我们的培训吧,这样经验的积累和薪水的提升会更快,从以前的统计数据看非常容易就可以回收这笔投资(替尚学堂的广告,必须得写,请见谅,但保证真实)。

如果条件不允许,那么就按照上面的方法来学习项目吧,不要因为暂时不能接触更大型更深入的项目而气馁,记住:机会总是青睐有准备的头脑,努力吧。

七:路线图明细:

下面给出第二节《JAVA自学路线图》[https://www.360docs.net/doc/457222242.html,/zixue/zixuezhilu_2.html] 中知识点的明细:

特别提示1:下面大多数的知识点我们已经公布了视频或者会近期公布(几个月之内),请大家关注一下这个网址https://www.360docs.net/doc/457222242.html,/download.html,可以按照该页面的提示,用电驴进行下载

2:这里是为方便大家自学给出的列表,请大家不要同尚学堂的课程画等号,下面的内容要比实际授课简单很多,另外很多知识是融汇在项目开发中的,适合面授,不适合自学。

一:J2SE 面向对象-封装、继承、多态

内存的分析

递归

集合类、泛型、自动打包与解包、Annotation

IO

多线程、线程同步

TCP/UDP

AWT、事件模型、匿名类

正则表达式

反射机制

2:数据库(Oracle或者MySQL)

SQL语句

多表连接,内外连接,子查询等

管理表、视图、索引、序列、约束等

树状结构存储

存储过程、触发器

数据库设计三范式、

JDBC基础

连接池

树状结构存储与展现

DataSource & RowSet

JDBC连接Oracle及MySQL

4:HTML_CSS_JAVAscript

html、css、基础语法

Form判断

Dom编程基础(事件处理等)

JS常用效果如TreeView、下拉联动等

JS学习方法

JS调试方法

DreamWeaver初步(建立HTML、Table、Form、CSS)等

5:Servlet & JSP

tomcat基础

servlet基础

web.xml配置基础

web application的结构

servlet生命周期

request response等常用方法

ServletContext类

HTTP协议基础(GET POST)

Cookie

Session

Application

JSP的几种语法(包括JSTL等)注意在项目中练习,不要拘泥于语法细节而裹步不前。

6:Struts

多层架构理论

Model 1 and Model 2

Struts基本概念

MVC

Action与业务逻辑类的关系

在Struts与JSP之间传递数据

Struts处理流程(控制流)

Struts TagLib(了解常用的)

JSTL

ActionForm

字段收集

上传文件

类型转换

动态Action Form

验证框架

ActionForward 转发与重定向

动态生成ActionForward

全局与局部的ActionForward

Action Forward Scope

UnknownActionMapping

Action的线程安全

I18N

如何切换语言环境

Struts异常处理机制程序处理自动处理自定义异常处理器

Struts的多模块配置

7:XML

(XML/XSL、XSLT/DTD、SCHEMA等基础的概念、关于Java的编程可以暂时扔在一边)

8:Hibernate

OR Mapping原理

Hibernate基础开发步骤

Hibernate基本接口(重点Session)

普通属性映射

关联关系映射

Native SQL

inverse lazy cascade

继承关系映射

HQL

性能优化一级缓存二级缓存查询缓存

事务与并发悲观锁、乐观锁

OpenSessionInView

CurrentSession

(至于JTA、联合主键、自然主键、动态主键、Any类型Creteria Queries Intercepter and Event 自定义类型等,可以暂时扔在一边)

9:Spring

IOC/DI

Spring配置

Spring架构

AOP及Spring AOP

声明式事务(AOP)

Spring + Hibernate Spring支持Web

Scope

(其他的Spring模块对于自学来说可以暂时扔在一边)

10:EJB3.0

J2EE架构基础(JTA JMS等)

EJB基础(地位及基本理论、分类等)

Annotation

Ant编译与部署EJB

Session Bean

EJB的依赖注入

Persistence API

(可以用JBoss学习EJB3.0)

11:至于SOA,对于自学的同学来说,暂时不用特别关注。

梳理一下,你就会发现东西不是想象中的那么多呀!

建议大家优先学习我们公布的视频,然后再去找参考书,因为这个时候就能分辨出来哪些书适合你了。

那么,如何才能找到好书呢?一个简单的办法,在卖书的网站上,比如https://www.360docs.net/doc/457222242.html,,搜索你想了解的知识点比如"",按销售排行,排在前几位的,应该就是不错的,记下书名,到书店阅读几章,合适你的就是好书了。没钱买?简单!还有什么google + 电驴找不到的资料吗:)

写了这么多,有一些是广告,在其位,谋其政,但并没有讲假话,还望大家理解,如果大家在自学的过程中有什么问题的话,可以写信给我mashibing2004@https://www.360docs.net/doc/457222242.html,或者training@https://www.360docs.net/doc/457222242.html,,我愿意随时聆听大家的教诲。

如果是技术问题,记得首先要阅读《JAVA自学之路五:问题解决之道》哦:)

注册消防(1篇3章要点)从零开始,备战21,每日要点,精华精编,免去培训,自学成才

第3章:爆炸 1节:爆炸的定义及分类 一、爆炸的定义(了解)爆炸是物质从一种状态迅速转变成另一种状态,并在瞬间释放出大量能量的现象,通常伴有发光和声响;爆炸是指在在周围介质中瞬间形成高压的化学反应或状态变化,是由物理变化和化学变化引起的 二、爆炸的分类(了解)按照物质产生爆炸的原因和性质,通常将爆炸分物理爆炸、化学爆炸、核爆炸3种,前2种最为常见 (1)核爆炸。原子核裂变或聚变反应,释放出核能所形成的爆炸,如原子弹、氢弹、中子弹的爆炸都属于核爆炸 (2)物理爆炸。是指物质因状态变化导致压力发生突变而形成的爆炸。爆炸前后物质的化学成分不变。物理爆炸虽本身没有进行燃烧反应,但其产生的冲击力可直接或间接地造成火灾,如:蒸汽锅炉爆炸、压缩气体/液化气的钢瓶爆炸、油桶受热爆炸等 (3)化学爆炸。是指物质急剧氧化或分解产生高温、压力增加或2者同时增加而形成的爆炸。爆炸前后物质的化学成分和性质均发生变化。如:炸药爆炸、可燃气体/粉尘/液体蒸汽与空气混合后形成的爆炸等 1)炸药爆炸。为完成可控制爆炸而设计的物质,属于凝聚体系爆炸,绝大多数炸药本身含有氧,不需外界提供氧就能爆炸 2)可燃气体爆炸。按爆炸原理分混合气体爆炸、气体单分解爆炸 3)可燃粉尘爆炸。是指悬浮于空气中的可燃粉尘触及明火或电火花等发生的爆炸现象(木粉、纸粉、樟脑粉、萘粉等) ①粉尘爆炸的过程。第1步:悬浮粉尘在热源作用下迅速干馏并产生可燃气体;第2步:可燃气体与空气混合被引燃发生有焰燃烧并传播、扩散;第3步:粉尘燃烧释放的热量,以热传导和辐射方式传给附近悬浮粉尘,该粉尘受热分解或干馏后使燃烧循环进行,反应速度逐渐加快,最后形成爆炸。这种爆炸反应及爆炸火焰传播速度、爆炸波传播速度、爆炸压力等持续加快和升高并呈跳跃式发展对于木炭、焦炭和一些非挥发性金属粉尘,在接受引火源的热能后直接与空气中的氧发生剧烈氧化反应并着火,产生的反应热使火焰传播,炽热的粉尘或其氧化物加热周围的粉尘和空气,使高温空气迅速膨胀,从而导致粉尘爆炸,但在整个爆炸中并不释放可燃气体 ②粉尘爆炸的3个条件。第1:粉尘本身是可燃的,可燃粉尘包括有机粉尘和无机粉尘,但并非所有粉尘都能爆炸,常见具有爆炸性的粉尘有:碳制品粉尘、木制品粉尘、金属类粉尘、肥料(鱼粉、血粉)、食品类(淀粉、面粉、砂糖、可可、奶粉、谷粉、咖啡粉等)、农产品加工类(胡椒、烟草、除虫菊粉)、合成制品(各种塑料、橡胶、合成洗涤剂、染料中间体)第2:粉尘必须悬浮在空气中,且其浓度处于一定范围。第3:有足以引起粉尘爆炸的引火源。一般最小点火能大致是10~100MJ,比可燃气体的最小点火能大100~1000倍 ③粉尘爆炸的特点。第1:与可燃气体爆炸相比,压力上升和下降均较缓慢、较高压力持续时间长、释放能量大、破坏严重。有的粉尘爆炸会因多次爆炸,反应速度和爆炸压力呈跳跃式加快或升高,具有离起爆点越远破坏越严重的特点。第2:可能会发生2次爆炸,而且二次爆炸压力更大、破坏更严重,形成连锁爆炸,有的可能达到轰爆的程度(轰爆是以“冲击波”为特征,传播速度>未反应物质中声速的化学反应)第3:比气体爆炸所需最小点火能大、引爆t长、过程复杂∴可通过仪器探测爆炸的前兆,并采取措施 ④粉尘爆炸的影响因素。第1:粉尘本身物理、化学性质。粉尘燃烧热高低、氧化v快慢、带电难易程度、含挥发物多少等;此外∵颗粒越小,其“比表S”越大(单位质量物料所具有的总S)分散度越大且悬浮t越长,吸附氧的活性越强∴爆炸危险性越大。第2:粉尘浓度。粒径条件一定下,粉尘浓度越高,着火温度越低。第3:环境条件。环境中的水分会削弱粉尘爆炸的可能性。环境的温度和压力增高时,粉尘的爆炸危害性也相应增加。第4:可燃气体和惰性气体的含量(负相关)第5:引火源强度、点火方式、

员工自学成才奖励办法

员工自学成才奖励办法 为鼓励员工自学成才,使企业呈现良好的学习氛围,特制订本办法: 一、奖励范围: 利用业余时间、自费取得的与公司生产、经营活动相关的各类证书。 二、证书类别 1、本科及以上毕业证书; 2、技师(二级)及以上职业资格证书; 3、工程系列、会计系列、经济系列等中级及以上职称。 三、奖励 1、取得国民教育系列博士学位的奖励50000元、硕士学位的奖励20000元、本科学历的奖励5000元;取得博士、硕士学位的还可以持国家认可的发票报销学杂费、书籍费; 2、取得国家承认的工程、会计、经济等系列高级职称的奖励10000元、中级职称的奖励5000元。 3、取得劳动保障部颁发的高级技师(一级)职业资格证书的奖励4000元、技师(二级)的奖励3000元。 4、取得非国民教育系列、省级文件规定可享受同等待遇的本科以上学

历的奖励2000元; 5、获得以上证书的一般岗位操作工,年龄不满30岁的、经本人申请可转为主要岗位操作工。 四、获奖程序 1、本人申请并附证书的原件、复印件,报人力资源部审核; 2、由人力资源部负责,与公司签订劳动合同补充协议; 3、主管人力资源副总经理签署意见; 4、总经理批准; 五、有关规定 1、所获证书专业须与本人从事的工作相关,不相关的不享受奖励; 2、获本科学历、中级职称、二级以上职业资格证书奖励的员工,合同期限在原期限基础上延续3年;获研究生、高级职称、一级职业资格证书奖励的员工,合同期限在原期限基础上延续5年,否则所得奖金及报销费用全额退回; 3、凡弄虚作假办理的证书,一经查实除退回奖金及报销的费用外,并将给予2000元的罚款并在公司范围内通报批评。 六、本规定自2015年1月1日起执行,解释权归人力资源部、财务部。

零基础java自学教程

零基础java自学教程 java的火爆袭来,吸引了大批的初学者涉猎,想入行java,却苦于自己没有基础,担心学不好。小编告诉你,这些担心都是浮云,你只是惧怕走进一个新天地,人都是一样的,面对自己不熟悉的领域总会有莫名的恐惧感。其实来千锋学习java的大部分都是零基础,照样高薪就业。不是不可以,只是你缺乏的是勇敢迈出去的勇气。 千锋小编整理了一份关于java自学的学习路线图,希望帮助每一位想学习java的小伙伴快速成长为java开发工程师。 Java学习分为四个阶段的学习,如零开始,逐渐深入,书籍和教学视频相结合,大步走向java开发工程师。 完整的java学习路线图: 第一阶段java基础,通过对基础阶段的学习,可以让学员清晰JavaEE开发工程师的定位及发展规划,同时鼓舞学员做好迎战的心理准备。 第二阶段javaWeb,是进阶阶段,掌握Java的基本语法,数据类型及各种运算符,开始可以写一些运算相关的程序。

第三阶段java框架,框架是程序中另一种存储数据的方式,比直接使用数组来存储更加的灵活,在项目中应用十分广泛。同时,我们将深入研究其中涉及到的数据结构和算法,对学员的技术深度有了一个质的提升。 第四阶段java+云数据,亿级并发架构演进、Linux基础、搭建tomcat环境以及大数据开发云计算等高级Java教程,是Java技术的高端知识。其中穿插项目实战演练,企业真实项目供学员应用学习,进行知识体系的“二次学习”。 Java自学书籍: 《Head First Java, 2nd Edition(中文版)》这本书不仅内容丰富、有趣且通俗易懂,并且涵盖了所有Java 相关的基础知识。如果你是Java 初学者,这本书正适合你。 《Java 核心技术(卷1、2)》写作风格相比Head First 趣味性来说更显传统,所涵盖的内容包括Java 基础知识及高级应用,是对于入门来说的另一种选择。 《Java 编程思想(第4版)》必读之作,不仅涵盖所有Java 基础,对于编程思想层面的提升也有很好的帮助。 《Head First 设计模式》延续Head First 一贯生动趣味的写作风格,介绍

自学成才的励志故事

自学成才的励志故事 17岁少年自学掌握23种语言 美国纽约17岁少年蒂莫西·多纳可谓语言天才,通过自学学会了23语言言,其中包括斯瓦希里语、依地语等小语种。他能够在短短几个星期内掌握一种语言,令人瞠目结舌。 蒂莫西和父母生活在纽约东村,就读于曼哈顿一所私立高中,他坚持学习那些离家数千公里之外的地方语言。 蒂莫西从2009年开始学习各种语言,其中接触的第一门外语是希伯来语。随后他学习了阿拉伯语和波斯语。 迄今,蒂莫西已经学会所有欧洲大国的语言,如法语、德语、西班牙语以及意大利语。他还能说一口流利的中国普通话。 虽然已经掌握多种语言,但蒂莫西并不打算固步自封,他打算继续学下去,接下来准备学苏丹语或者马来语。 18岁女孩发明神奇充电器 美国加州一位18岁印度裔女孩埃沙·卡瑞(Esha Khare)日前发明一款神奇充电器,能在20秒钟之内充进与普通手机电池相当的电量,在日前举行的英特尔国际科学与工程大奖赛获得了5万美元(约合人民币30万元)奖金。 这种“超级电容器”体型更小,据称仅需20秒左右就能够充满一部手机,且能长时间保存电量,使被充电设备能使用更长时间。 卡瑞说,她的手机总是会因为电量不足而关机。正是这种烦恼成为她去研究充电技术的动机。当前,谷歌公司正在就哈尔所采用的技术与她实行积极接触,双方有望展开紧密合作。 26岁高中辍学生成亿万富豪

近日,美国26岁高中辍学生卡普一夜间成为亿万富豪的消息,成 为媒体瞩目的焦点。 高中即主动选择退学的卡普是自学成为计算机编码的天才,他6 年前创办的轻博客网站汤博乐(Tumblr)日前以11亿美元价格出售。 汤博乐网站既是微博平台,也是社交网站,能够快速发布图片、 文字和视频。该网站有1亿用户,每天贴出9000万条博文。百变天后Lady Gaga和Joe Jonas等名人都在汤博乐开设网页。 在曼哈顿上西城长大的卡普,父亲是为电影和电视剧创作歌曲的 音乐作曲家,母亲是教师。 卡普11岁时自学HTML编写程序,很快成立自己的顾问公司。卡 普15岁读高中时,父母同意他退学,在家完成教育。他17岁去日本,软件程序的技能得到进一步增强,开始为高科技公司出谋划策。 卡普回到纽约后卖掉了顾问公司。2007年,卡普21岁时,在母亲位于曼哈顿的小公寓里创办了博客网站汤博乐。 雅虎公司董事会5月19日决定,以11亿美元收购卡普创办的汤 博乐。雅虎公司执行长玛蕊莎·梅尔说,她希望迅速完成收购,以便 推动公司的发展战略。 14岁男孩成“人气大厨” 美国一位14岁少年只因嫌妈妈做饭难吃,立志自强,通过自学成 为声名赫赫的大厨,并开了一家自己的餐厅。 这位名叫弗林·麦加利的烹饪“神童”住在美国圣费尔南多谷。 在11岁时,弗林受不了母亲的厨艺“太差”,开始“自立自强”,自 己尝试下厨,却不料一发不可收拾,从此爱上烹饪,甚至成为有名的 大厨。 弗林表示,刚开始学烹饪时,是通过上网、逛书店方式找寻食谱,后来自己也有了创意。现在,弗林自己经营着餐厅“pop-up”,还曾

2016年10月自考Java语言程序设计(一)04747

2016年10月高等教育自学考试全国统一命题考试 Java语言程序设计(一)试卷 (课程代码 04747) 本试卷共9页,满分l00分,考试时间l50分钟。 考生答题注意事项: 1.本卷所有试题必须在答题卡上作答。答在试卷上无效,试卷空白处和背面均可作草稿纸。 2.第一部分为选择题。必须对应试卷上的题号使用2B铅笔将“答题卡”的相应代码涂黑。 3.第二部分为非选择题。必须注明大、小题号,使用0.5毫米黑色字迹签字笔作答。 4.合理安排答题空间,超出答题区域无效。 第一部分选择题(共l0分) 一、单项选择题(本大题共l0小题,每小题l分,共10分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题卡”的相应代码涂黑。错涂、多涂或未涂均无分。淘宝店铺自考达人 V信1297755429 1.在下述字符串中,不是Java余言关键字的是 A.int B.static C.java D.try 2.要作下列数据类型转换,需进行强制类型转换才能实现的是 A.从int到char B.从int到 long C.从lloat到 double D.从byte到 int 3.在以下供选择的概念中,属于面向对象语言重要概念或机制的是 A.方法 B.模块 C.线程 D.继承 4.在下述Java程序代码中,能正确创建数组的是 A.int myA[5]={1,2,3,4,5); B.int myA[]=new int(5); C.int myA[];myA[]=new int[5]; D.int[]myA={1,2,3,4,5,6};5.某Java程序的类A需要利用Swin9创建无边框窗口,则A需要继承的类是A.JWindow B.JApplet C.JFrame D.JDialog 6.在以下供选的鼠标事件中,MouseMotionListener接口能处理的是 A.按下鼠标键 B.拖动鼠标 C.鼠标进入 D.鼠标松开7.在以下代码中,能正确创建Font对象的是 A.new Font(″宋体″,斜体,20); B.new Font(″楷体″,20,正常);C.new Font(″楷体″,Font.BOLD,l 8); D.new Font(″楷体″,1 8,Font.BOLD);8.某线程正处于运行状态,则在以下选项中,不可能是它的后继状态的是 A.就绪状态 B.新建状态 C.阻塞状态 D.死亡状态 9.某Java程序用类JFileChooser来实现打开和保存文件对话框。当对话框的返回 值是JFileChooser.APPROVE_OPTION时,程序进一步的工作是 A.用方法getName()取得文件名称 B.用方法getPathO()取得文件路径 C.用方法getFile()取得文件内容 D.用方法getSelectedFile()取得文件对象 10.Java语言实现C/S模式时,需要使用网络套接字,套接字的内容包括 A.IP地址+端口号 B.IP地址+监控线程名 C.监控线程名+端口号 D.IP地址+监控线程名+端口号 第二部分非选择题(共90分) 二、填空题(本大题共l0小题,每空2分,共20分) 11.一个Java小应用程序必须定义成一个子类,它的超类是______。 12.在Java语言中,左移运算符是______。 13.类A的成员变量x的类型是类B的,则类A和类B之间的关系是______。14.以下代码: 的输出结果是_______。 15.在JFrame子类的构造方法中,代码getContentPane0的作用是_______。16.用JScrollBar创建一个垂直滚动条对象时,需要指定的常量是_______。17.在异或模式下绘图时,实际绘制的颜色是由3种颜色作特定的运算确定的:当前正要绘 制的颜色、原先绘制的颜色以及_______。 18.处于运行状态的线程执行yield()方法,该线程将进入_______状态。 19.在Java语言中,客户端使用的套接字类是_______。 20.在Java语言中,DriverManager类的作用是加载驱动程序和_______。

菜鸟如何自学JAVA

菜鸟如何自学JAVA 呵呵,当年我也是靠着自学走上java程序员这条路的,就给你写几点我的体会吧。 首先java完全可以在半年之内学通,只要你确实用心学,这点完全不必担心。 如果你智商属于普通人并且完全没有编程的基础,例如c,c++,或者其他编程语言(我指的是亲手编写一个完整的程序,helloworld或者剪切字符串不算)我强烈不推荐你看书,不然将浪费你大量的入门时间,甚至走许多弯路(比如做j2ee的话swing与swt是基本不用会的,多线程也只要会点基础即可),现在java的视频教程满天飞,完全可以选一个讲解清晰,条理明确的java入门视频,这里我推荐马士兵的j2se 视频教程,以前我看的也是这个,虽然现在看来里面有点小错,但不失为一个看起来愉快,学起来轻松的入门级教程,毕竟刚开始的时候还是应该以培养兴趣为主,。 入了门之后就要选方向j2me或j2ee,这两种你可以自己上百度搜下,其实都是满有前途的,以后牛了双修也未尝不可。 我个人学的是j2ee的内容,j2ee说白了就是做网页,这时候你要从先从java里脱身出来,学些跟网页有关的东西: 1.html:很简单的东西不是太笨的话半天左右即可搞定 2.js:易学难精,想速度找工作不必花太多时间,随便买本javascript书略读并备查推荐:JavaScript高级程序设计;JavaScript权威指南

3.数据库:如果没有基础的话,建议多花时间,至少一个月,开始建议用mysql,然后是oracle,然后是sqlserver,这段时间最关键的就是sql语言的编写,关系到你今后笔试的成败,一定要自己多练,多在网上找笔试题做。 5.xml 就是一种封装数据的格式,没啥好学的,练习一下怎么用dom4j或者jdom读写xml即可,可以直接去网上下有注释的例子程序来看看,比看视频看书快多了。 6.jsp,servlet,tomcat: 这段时间说白了就是用jsp来做个网站,学习方法也很多种,可以看书比如java web 开发详解,我一同学就是看这本书看会的。 也可以继续看视频比如尚学堂的jsp,servlet。 7.学再多不实践也是不行的,这时候可以自己搞个小项目了,可以参考尚学堂shopping视频,bbs视频,不过这两个项目练练手可以,别往简历上写,太丢脸了。这其中还有很多小工具,例如jxl的excel读写,jfreechat的图表生成等等,实在不行进公司再学也行,因为不一定每家公司都用这些东西。 8.开始进入框架时代,框架说白了就是加速开发的工具,内在原理还是以上的那些东西 主要是3大框架: mvc框架:struts,struts2,jsf or映射框架:hibernate,ibatis 业务框架:spring

自学成才事迹材料

自学成才事迹材料 *同志,**年**月毕业于**大学**系**专业,被分配**公司**水厂工作,现为**厂***。**年来,该同志扎根偏远地区,努力自学,锐意创新,锲而不舍,多次被**公司评为“先进职工”等荣誉称号,由他组织研究的QC课题《提高**矿区管网水质综合合格率》、《提高**水源出口水质合格率》等荣获**局QC成果三等奖,同时《降低**水源单井采水用电单耗》等课题也荣获公司二、三等奖。工作之余,他把加强学习,努力提高综合素质作为唯一的业余生活。多年如一日,单读书笔记就有5余万字。XX年9月,他又报名参加了**党校函授法律本科专业的学习。 参加工作后,被分配到水源站上班,该同志把精力全身心地放在了学习与工作之中,日常工作中经常向老师傅进行请教学习,得到了水厂领导和同志们的认可。但是,随着社会形势的发展,技术人才的推广,水厂对值班人员的要求越来越高,他意识到知识的缺乏。但是,日常工作不能放松,唯一的办法就是利用休息时间自学,也就是从那时起,他毅然走上了自学成才这条充满艰辛的道路,一直走到今天。XX 年底,由于个人不懈的努力及领导的信任,他被调到厂部任技术员工作,XX年被公司聘为水厂***至今。几年来,他的工作虽然调动了,但是他的自学道路没有改变。根据现在的

工作性质及时间,他给自己制定了详实的学习计划,并逐步加以实施。每天8点到10点是他的学习时间,当夜深人静的时候,窗户上就投下了他伏案的身影。困了乏了,就用凉水洗洗脸;饿了,随便找块馒头来充饥。冬天有暖气还好,可夏天就难熬了。***家住一楼,一到夏天就像蒸笼一样,让人透不过气来。打开风扇会把纸吹得满地都是,他干脆不用风扇,就拿一块毛巾蘸上水披在肩上,蚊子围着他打转转,盯得满身是小红疙瘩,但他依旧坚持着。XX年夏天,**在一次外出时意外被迎面的一辆拖拉机刮了一下,滚烫的排气管把他的右臂烙伤了一大片,稍微一动,疼痛难忍。当天晚上9点,他又坐在了写字台前,不能写就背,右手不敢动,翻页的时候就用下巴抵着书,用左手翻。妻子看在眼里,疼在心里。就是这样,**艰难的在自学的道路上艰难的跋涉。他说:“自学是苦了点,但每天都能学到知识是幸福的。” 因为他在大学学的不是与工作有关的专业,在工作中时常碰到一些不明白的问题。遇到难题,他就翻书查找,遇到实在解决不了的问题就主动向水厂老同志及其他技术人员请教,直到弄懂、弄会为止。每当水厂维修班人员到现场搞维修工作时,他都能主动同其一起去现场,主动围上前去认真学习、请教。为了彻底弄清、学懂离心泵的构造和性能,他特意向水厂借了一台离心泵运到办公室,只要一有时间,他就围在这台水泵周围来认识各部位零件、学习组装、拆卸

全国高等教育自学考试Java语言程序设计考试试题

全国2009年1月自学考试Java语言程序设计(一)试题课程代码:04747 一、单项选择题(本大题共10小题,每小题1分,共10分) 1.下列字符组合不能作为Java整型常量的是( ) A.078 B.0x3ACB C.5000 D.0x3ABC 2.以下程序代码的输出结果是( ) int x = 10; while (x > 7) ;} A.** B.*** C.* D.**** 3.设类U声明,及对象u和v的定义如下: class U{ int x, int y; U(int a, int b){x= a; y = b;} void copy(U a){ x = a.x; y = a.y;} } U u = new U(1, 2), v = new U(2, 3);在以下供选择的代码中,可能引起系统回收内存的是( ) B.u=v; 4.设有以下代码:String s l="123";String s2="123";String s3=new String("123"); 则表达式s1==s2和s1==s3的值分别是( )A.true,true B.false,false C.true,false D.false,true 5.以下关于AWT与Swing之间关系的叙述,正确的是( ) A.Swing是AWT的提高和扩展 B.在写GUI程序时,AWT和Swing不能同时使用 C.AWT和Swing在不同的平台上都有相同的表示 D.AWT中的类是从Swing继承的 6.在以下Swing组件中,能为它指定布局管理器的是( ) A.JScrollBar对象 B.JMenuBar对象 C.JComboBox对象 D.JDialog对象 7.一般的绘图程序要定义一个JPanel子类。在JPanel子类中还要重定义一个方法,在这个方法中调用绘图方法,绘制各种图形。要重定义的方法是( ) A.paint() B.paintComponent() C.repaint() D.update() 8.用Runnable接口实现多线程的主要工作是( ) A.声明实现Runnable接口的类,在类内实现run()方法,让线程调用start()方法。 B.声明实现Runnable接口的类,在类内实现run()方法,在类内声明线程对象,在init()方法中创建新线程,启动新线程。 C.声明实现Runnable接口的类,在类内实现run()方法,在类内声明线程对象,在Init()方法或start()方法中创建新线程,在start()方法中启动新线程。 D.声明实现Runnable接口的类,在类内实现run()方法,在init()方法中创建新线程,在start()方法中启动新线程。 9.程序如果要按行输入输出文件的字符流,最合理的方法是采用( ) A.BufferedReader类和BufferedWriter类 B.InputStream类和OutputStream类 C.FileReader类和FileWriter类 D.File_Reader类和File_Writer类 10.在编写访问数据库的Java程序中,要用到DriverManager类。该类的作用是( ) A.存储查询结果 B.处理与数据库的连接 C.在指定的连接中处理SQL语句 D.处理驱动程序的加载和建立数据库连接 二、填空题(本大题共10小题,每小题2分,共20分) 11.Java程序的字节码文件的扩展名是_________。 12.构造一个Java表达式:y/x>5,并且x!=0。这个表达式是_________。 13.在类声明之前用_________修饰,声明类是不能被再继承的类,即它不能再有子类。 14.设有字符串定义:String s="ABCDABCD";则表达式s.indexOf("B")的值是_________。 15.在实现接口ActionListener的方法actionPerformed()中,常用的有两个获得事件源的方法,它

关于鼓励和提倡员工自学成才的通知

关于鼓励和提倡员工自学成才的 通知规定 企业的发展离不开人才,人才的成长离不开学习与培育。现代企业的的竞争表面上是人才的竞争,其实质是企业管理机制和企业持续学习力的竞争。一个企业员工文化综合素质的高低,很大程度上决定企业市场竞争力的强弱。为提高广大员工个人综合素质和工作质量及工作效率,鼓励广大员工积极参与学习、参与竞争,以期达到内强素质,增强企业竞争力的目的,特制定本通知规定。 一、集团公司鼓励全体员工采用不同的学习方式积极参加各类文化知识的学习培训,提高个人综合素质。 二、在不影响本职工作的前提下,公司鼓励全体员工利用业余时间积极参加各类学习和培训。 三、任何员工需参加脱产学习的,首先须向本公司主管领导提出申请,填写《员工培训学习申请表》,经本公司主管领导批准后报集团公司办公室审核, 经集团董事长批准后方可外出学习。但个人必须首先提出交入学通知书。 四、集团公司批准外出学习的员工视为公派学习,该类员工在外出学习期间的工资参照“华集字[2006]02号”文件执行。 五、非公派脱产外出学习的员工,其在外出学习期间的工资一律不得享受,仅保留工籍。 六、无论公派学习、非公派学习或是利用业余时间参加学习的员工,其学习期间的一切费用由个人先行负担,待学成毕业后,个人持入学通知书、毕业 证书等证件再申请报销有关费用。 七、任何员工参加学习并完成学业后,只要取得相应证件(国家或行业认可)的,公司一律给予承认并享受相应的学历职称补贴。 八、需要参加学习的员工原则上应参加从事本工作专业方面或公司急需专业技能方面的学习,杜绝无意义和与专业无关的学习。 九、任何参加学习的员工必须学有所成,真实有效,学以致用,不得弄虚作假骗取个人利益。违规者公司将给予相应处罚。 十、本通知规定适用于集团公司所属公司、部门及全体员工自公布之日起执

Java个人学习心得

呵呵,当年我也是靠着自学走上java程序员这条路的,就给你写几点我的体会吧。 首先java完全可以在半年之内学通,只要你确实用心学,这点完全不必担心。 如果你智商属于普通人并且完全没有编程的基础,例如c,c++,或者其他编程语言(我指的是亲手编写一个完整的程序,helloworld或者剪切字符串不算)我强烈不推荐你看书,不然将浪费你大量的入门时间,甚至走许多弯路(比如做j2ee的话swing与swt是基本不用会的,多线程也只要会点基础即可),现在java的视频教程满天飞,完全可以选一个讲解清晰,条理明确的java入门视频,这里我推荐马士兵的j2se视频教程,以前我看的也是这个,虽然现在看来里面有点小错,但不失为一个看起来愉快,学起来轻松的入门级教程,毕竟刚开始的时候还是应该以培养兴趣为主,。 入了门之后就要选方向j2me或j2ee,这两种你可以自己上百度搜下,其实都是满有前途的,以后牛了双修也未尝不可。 我个人学的是j2ee的内容,j2ee说白了就是做网页,这时候你要从先从java里脱身出来,学些跟网页有关的东西: 1.html:很简单的东西不是太笨的话半天左右即可搞定 2.js:易学难精,想速度找工作不必花太多时间,随便买本javascript书略读并备查推荐:JavaScript高级程序设计;JavaScript权威指南 3.数据库:如果没有基础的话,建议多花时间,至少一个月,开始建议用mysql,然后是oracle,然后是sqlserver,这段时间最关键的就是sql语言的编写,关系到你今后笔试的成败,一定要自己多练,多在网上找笔试题做。 5.xml 就是一种封装数据的格式,没啥好学的,练习一下怎么用dom4j或者jdom读写xml 即可,可以直接去网上下有注释的例子程序来看看,比看视频看书快多了。 6.jsp,servlet,tomcat: 这段时间说白了就是用jsp来做个网站,学习方法也很多种,可以看书比如java web 开发详解,我一同学就是看这本书看会的。 也可以继续看视频比如尚学堂的jsp,servlet。 7.学再多不实践也是不行的,这时候可以自己搞个小项目了,可以参考尚学堂shopping 视频,bbs视频,不过这两个项目练练手可以,别往简历上写,太丢脸了。这其中还有很多小工具,例如jxl的excel读写,jfreechat的图表生成等等,实在不行进公司再学也行,因为不一定每家公司都用这些东西。 8.开始进入框架时代,框架说白了就是加速开发的工具,内在原理还是以上的那些东西 主要是3大框架: mvc框架:struts,struts2,jsf or映射框架:hibernate,ibatis 业务框架:spring 重量级框架:ejb 每种挑一样学即可,因为大概都差不多,学了一种同类产品可以在3天内搞定 学习方法分两类 1.看视频:时间长,要有耐性,估计全看完要1个半月,基本可以学全开发用的东西,但是对内在原理了解不深。 2.看网上资料,看书:速度因人而已,领悟力强的半个月就能搞定,学的东西还比看视频多,毕竟学到这阶段都有点基础了,可以研究下程度更深的东西,如果自觉不够聪明就别勉强了,说不定3个月还云里雾里。

公司员工自学成才奖励办法

公司员工自学成才奖励办法 为充分调动广大员工学文化、学技术、学业务的积极性,引导和激励员工自学成才、岗位成才,制定本办法。 一、学历(学位)奖励 公司鼓励员工利用业余时间自费参加学历(学位)教育学习。对通过业余自费学习获得国民教育系列大专及以上学历或取得学位,并经公司认可、登记备案的员工给予奖励。 (一)专业对口的奖励标准如下: (二)专业不对口的按上述标准的50%给予奖励。 二、技术(技能)竞赛奖励 公司鼓励员工参加各类技术(技能)竞赛,以赛促学,不断提高技术(技能)素质。对参加公司级及以上技术(技能)竞赛获奖的员工,给予通报表扬和一定的物质奖励,并可按有关文件规定晋升技能等级。物质奖励标准为:

1、跨行业、跨系统的竞赛为一类竞赛,单一行业(系统)的为二类竞赛。 2、获得国家级一、二类竞赛第七至二十名的,须同时获得国家或行业技术能手称号,方可得到公司奖励。 3、原已在某一级别竞赛获奖,公司给予了奖励,又参加与该级别相当或更低级别竞赛获奖的,公司不再进行奖励。 三、技术(技能)资格奖励 公司鼓励员工不断学习岗位专业知识和专业技能。对取得与从事岗位相近或相关的职称和职业资格,经公司认可、登记备案,并被所在单位聘任(各单位聘任比例不得超过65%)的员工,所在单位应给予一定的津贴待遇。 (一)职称资格最低津贴标准(元/月) (二)职业资格最低津贴标准(元/月) (三)鼓励员工在专长本岗位专业的前提下,钻研相近或相关岗位的专业知识,成为技术技能型、复合技能型人才。 员工被单位聘任的技术(技能)资格达到中级职称或高级工(三级)及以上,又取得了相近或相关岗位(工种)的技术(技能)资格证书,且承担了相应工作任务的,可以在享受所聘岗位职称或职业资格津贴的基础上,额外享受一定津贴。额外津贴最高不超过本人所聘岗位职称或职业资格津贴标准。 四、公司设立自学成才专项奖励基金。本办法第一、二条奖励在公司自学成才专项奖励基金中列支,第三条奖励由各单位在内部分配制度中明确。 五、本办法由人力资源部负责解释。 六、本办法自印发之日起实行,原有关规定与本办法相悖的,同时废止。

【黑马程序员】Java自学编程代码实例

【黑马程序员】Java自学编程代码实例 《毕向东Java基础视频教程_适合初学者入门》 完整视频: https://www.360docs.net/doc/457222242.html,/course/7.html?1912sxkqq 课程资料: https://https://www.360docs.net/doc/457222242.html,/s/1jAjI85SlUTlrTuF_J2QNeQ 提取码:4bfg 135、写一个Singleton出来 Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。一般Singleton模式通常有几种种形式: 第一种形式: 定义一个类,它的构造函数为private的,它有一个static的private的该类变量,在类初始化时实例话,通过一个public的getInstance方法获取对它的引用,继而调用其中的方法。 public class Singleton { private Singleton(){} //在自己内部定义自己一个实例,是不是很奇怪? //注意这是private 只供内部调用 private static Singleton instance = new Singleton(); //这里提供了一个供外部访问本class的静态方法,可以直接访问

public static Singleton getInstance() { return instance; } } 第二种形式: public class Singleton { private static Singleton instance = null; public static synchronized Singleton getInstance() { //这个方法比上面有所改进,不用每次都进行生成对象,只是第一次 //使用时生成实例,提高了效率! if (instance==null) instance=new Singleton(); return instance; } } 其他形式: 定义一个类,它的构造函数为private的,所有方法为static的。 一般认为第一种形式要更加安全些 136、继承时候类的执行顺序问题,一般都是选择题,问你将会打印出什么? 答:父类: package test;

自学Java的学习路线

Java学习路线 先学习j2se 要学习j2ee就要先学习j2se,刚开始学习j2se先建议不要使用IDE,然后渐渐的过渡到使用IDE开发,毕竟用它方便嘛。学习j2se推荐两本书,《java2核心技术一二卷》,《java编程思想》,《java模式》。其中《java编程思想》要研读,精读。这一段时间是基本功学习,时间会很长,也可能很短,这要看学习者自身水平而定。 不要被IDE纠缠 在学习java和j2ee过程中,你会遇到五花八门的IDE,不要被他们迷惑,学JA V A的时候,要学语言本身的东西,不要太在意IDE的附加功能,JA V A编程在不同IDE之间的转换是很容易的,过于的在意IDE的功能反而容易耽误对语言本身的理解。目前流行的IDE有jbuilder,eclipse和eclipse的加强版WSAD。用好其中一个就可以了,推荐从eclipse入手j2ee。 因为Jbuilder更适合于写j2se程序。 选择和学习服务器使用配置 当你有了j2se和IDE的经验时,可以开始j2ee的学习了,web服务器:tomcat,勿庸置疑,tomcat为学习web服务首选。而应用服务器目前主要有三个:jboss、weblogic、websphere。有很多项目开始采用jboss,并且有大量的公司开始做websphere或weblogic向jboss应用服务器的移植(节省成本),这里要说的是,学习tomcat和jboss我认为是首选,也是最容易上手的。学习服务器使用配置最好去询问有经验的人(有条件的话),因为他们或许一句话就能解决问题,你自己上网摸索可能要一两天(我就干过这种傻事),我们应该把主要时间放在学习原理和理论上,一项特定技术的使用永远代替不了一个人的知识和学问。 学习web知识 如果你是在做电子商务网站等时,你可能要充当几个角色,这是你还要学习:.'l:8SxT?L html,可能要用到dreamwave等IDE。ZO(T u%xU Javascript,学会简单的数据校验,数据联动显示等等 J2eeAPI学习 学习j2eeAPI和学习服务器应该是一个迭代的过程。 先学习jsp和servlet编程,这方面的书很多,我建立看oreilly公司的两本《jsp设计》和《java servlet编程》,oreilly出的书总是那本优秀,不得不佩服。 学习jdbc数据库编程,j2ee项目大多都是MIS系统,访问数据库是核心。这本应属于j2se 学习中,这里拿出来强调一下。 学习jndi api,它和学习ejb可以结合起来。 学习ejb api,推荐书《精通ejb》 经过上面的这些的学习,大概可以对付一般的应用了。 有人说跟着sun公司的《j2ee tutorial》一路学下来,当然也可以。 学习ejb设计模式和看代码(最重要) 设计模式是练内功,其重要性可以这么说吧,如果你不会用设计模式的话,你将写出一堆使用了ejb的垃圾,有慢又是一堆bug,其结果不如不用ejb实现(ejb不等于j2ee) 无论学习什么语言,都应该看大量代码,你看的代码量不到一定数量,是学不好j2ee的 目前有很多开源的工程可以作为教材:

2020年Java自学路线图--Javaweb学习

2020年Java自学路线图--Javaweb学习Javaweb的学习时是Java学习路线图的第三个阶段,在Java学习路线图前两个阶段学习后开始学习Javaweb。具备基本的JavaWeb开发能力,熟悉Linux服 务器及相关软件的使用,可完成中小型企业级项目的开发需求。这个阶段学完后就可以考虑工作了,是不是很快? 这个阶段需要你掌握JavaWeb开发基础知识,熟悉Java基本开发环境、熟悉项目管理工具使用及Linux服务器使用,达到了这些才能满足Java软件开发行业的基本开发需求。

1.数据库的概念 2.常见的数据库软件 3.MySQL数据库的安装卸载 4.MySQL数据库的登录退出 5.MySQL的目录结构 6.SQL语句的分类 7.数据库和数据表的操作 8.数据的添加(insert) 9.数据的删除(delete) 10.数据的修改(update) 11.数据的查询(select) 12.数据的复杂查询 13.约束的使用 14.多表关系(一对一、一对多、多对多) 15.三大范式详解 16.数据库的还原和备份 17.多表查询操作 18.事务介绍 19.事务的隔离 20.数据库的用户管理和权限管理 21.黑马程序员视频库网址:https://www.360docs.net/doc/457222242.html,(海量热门编程视频、资料免费学习) 22.学习路线图、学习大纲、各阶段知识点、资料网盘免费领取+QQ 1679806262

1.JDBC入门 2.DriverManager类详解 3.Connection类详解 4.Statement类详解 5.JDBC完成增删改查操作 6.ResultSet类详解 7.JDBC工具类的编写 8.PreparedStatement类详解 9.使用JDBC完成事务管理 10.连接池的介绍 11.c3p0连接池的使用 12.druid连接池的使用 13.创建druid连接池工具类 14.JDBCTemplate的使用HTML5&CSS3 1.B/S架构 2.HTML基本使用 3.HTML常用标签 4.CSS选择器 5.常用样式

世界名人自学成才十例

世界名人自学成才十例 恩格斯(1820-1895) 马克思主义的创造人之一,全世界无产阶级的伟大导师。恩格斯的父亲是纺织厂主,1837年,恩格斯中学还没有毕业,就被父亲逼迫去经商。他只读过中学,但善于利用时间,卓有成效地学习,二十一岁时发表论文,批判同时代著名的哲学家谢林。他系统地攻读和钻研了人类所提供的广博渊深的知识,几乎涉及和研究了所有的科学部门,并在许多领域取得了惊人的成就,甚至解决了自然科学的一些领域里的难题,成为一位伟大的无产阶级哲学家、经济学家、军事家、语言学家、文学家、史学家和自然科学家。 齐奥尔科夫斯基(1857-1935) 俄国数学家和物理学家,液体燃料火箭的创始者。十四岁开始自修文学和自然科学。1880年起在卡鲁格省巴罗夫县学校里当数学教员,一面继续自修,研究天文学、生物学和化学,并且特别努力研究航空科学。1895年,他发表了人造卫星的图样,提出以人造卫星为宇宙航行的中途基地向月球和其他星球发射火箭的主张,并科学地论证了借助火箭实现宇宙飞行的可能性。1903年,他发表的重要著作《以喷气装置探测宇宙空间》,解决了关于火箭在太空中不受地心引力与介质阻力的影响而运动的问题,并创立了计算火箭速度的著名公式。 米丘林(1855-1935) 苏联著名生物学家。十六岁时,还没有读完中学,就被生活所迫,到车站做职员。二十岁时从事园艺研究工作,致力于果木移接的试验。他发现果木在一定环境条件下可以改变品质,并产生新的品种,因此可以使热带果木在寒带生长。他先后创造了三百多种优良的植物品种。他创造性地发展了达尔文主义,把生物学推向一个新的阶段——米丘林生物学。 比埃尔·居里(1859-1906) 法国著名物理学家。他没有正式进过学校,由于努力自修,十八岁时便考得了巴黎大学的硕士学位,十九岁任巴黎大学助教。1889-1891年,发明了在化学分析的应用上很宝贵的“居里天平”,1895年发现了磁性和温度的关系,即有名的“居里定律”。在法国物理学家贝克勒尔发现铀的化合物具有放射性的基础上,居里夫妇继续研究,终于在1898年七月发现了钋,同年十二月发现了镭,从而他们和贝克勒尔共同获得1903年的诺贝尔物理奖金。居里夫妇的科学成果,特别是镭的发现,为人类带来了幸福。由于镭的发现,

2020年Java自学路线图

2020年中级程序员Java自学路线图 Java学习路线是螺旋上升的,需要耗费的时间和精力不比其他学科的少,但由于其稳健性的特点使其成为企业开发的刚需编程语言。从网上看到发布Java学 习路线图的很多,但大部分学习路线图是很零碎的,没有系统的学习目标和重点知识。 很多人一看其他的Java学习路线图傻了,要学习这么多,也没有重点,算了放弃吧。 我是从大二开始自学Java编程,黑马程序员的Java学习路线图是有重点的,而且有免费的各阶段Java自学教程,相比同时自学的其他同学能少走弯路,并且学到的能力也是企业在招聘中需要的。 黑马程序员视频库网址:https://www.360docs.net/doc/457222242.html,(海量热门编程视频、资料免费学习) 学习路线图、学习大纲、各阶段知识点、资料网盘免费领取+QQ 1679806262 第一阶段Java零基础学习路线图--语言入门

此阶段的学习目标: 基础语法是学习任何编程语言的第一课,学好基础语法,才能更好的学习后面的课程知识点。 此阶段的市场价值: 具备Java语言编程基础,可以实现简单的小系统程序,但达不到企业型人才的标准。 此阶段的重点知识: ?掌握Java开发环境基本配置 ?掌握运算符、表达式、流程控制语句、数组等的使用 ?熟练使用IDEA开发工具 ?掌握Java基本面向对象知识 ?掌握常用类String、ArrayList等的使用 ?掌握学生管理系统编写 第二阶段Java零基础学习路线图--语言进阶 此阶段的学习目标: 具备JavaSE基本开发能力,可胜任简单单机应用程序。 此阶段的市场价值: 具备JavaSE基本的开发能力,可以实现简单单机应用程序,对企业JavaWeb开 发又进一步,也为JavaWeb学习提供基础。 此阶段的重点知识: ?深入理解Java面向对象相关知识点 ?掌握开发中常用类如集合、IO流、时间日期等操作

相关主题
相关文档
最新文档