JAVA教程之J2SE 5.0实例---列举
学习JAVA的目的更多的是培养自身的工作能力,我觉得工作能力的一个核心就是:独立思考能力,因为只有独立思考后,才会有自己的见解j2se列举在已往,我们必需用整型常数取代列举,跟着J2SE5.0的公布,如许的办法终究一往不复返了。
一个复杂的列举范例界说以下:
publicenumWeather
{
SUNNY,RAINY,CLOUDY
}
列举能够用在switch语句中:
Weatherweather=Weather.CLOUDY;
switch(weather)
{
caseSUNNY:
System.out.println("Itssunny");
break;
caseCLOUDY:
System.out.println("Itscloudy");
break;
caseRAINY:
System.out.println("Itsrainy");
break;
}
列举范例能够有本人的机关办法,不外必需是公有的,也能够有其他办法的界说,以下面的代码:
publicenumWeather{
SUNNY("Itissunny"),
RAINY("Itisrainy"),
CLOUDY("Itiscloudy");
privateStringdescription;
privateWeather(Stringdescription){
this.description=description;
}
publicStringdescription(){
returnthis.description;
}
}
上面一段代码是对这个列举的一个利用:
for(Weatherw:Weather.values())
{
System.out.printf("Descriptionof%sis"%s".
",w,w.description());
}
Weatherweather=Weather.SUNNY;
System.out.println(weather.description()+"today");
假如我们有一个列举范例,暗示四则运算,我们但愿在个中界说一个办法,针对分歧的值做分歧的运算,那末我们能够如许界说:
publicenumOperation{
PLUS,MINUS,TIMES,DIVIDE;
//Doarithmeticoprepresentedbythisconstant
doubleeval(doublex,doubley){
switch(this){
casePLUS:returnx+y;
caseMINUS:returnx-y;
caseTIMES:returnx*y;
caseDIVIDE:returnx/y;
}
thrownewAssertionError("Unknownop:"+this);
}
}
如许写的成绩是你假如没有最初一行抛出非常的语句,编译就没法经由过程。并且假如我们想要增加一个新的运算,就必需时候记住要在eval中增加对应的操纵,万一健忘的话就会抛出非常。
J2SE5.0供应懂得决这个成绩的举措,就是你能够把eval函数声明为abstract,然后为每一个值写分歧的完成,以下所示:
publicenumOperation{
PLUS{doubleeval(doublex,doubley){returnx+y;}},
MINUS{doubleeval(doublex,doubley){returnx-y;}},
TIMES{doubleeval(doublex,doubley){returnx*y;}},
DIVIDE{doubleeval(doublex,doubley){returnx/y;}};
abstractdoubleeval(doublex,doubley);
}
如许就制止了下面所说的两个成绩,不外代码量增添了一些,可是跟着从此各类Java开辟IDE的改善,代码量的成绩应当会被淡化。
JAVA是一种可以撰写跨平台应用软件的面向对象的程序设计语言,由升阳(SunMicrosystems)公司的詹姆斯·高斯林(JamesGosling)等人于1990年代初开发。 接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。 如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。 接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。 是一种为 Internet发展的计算机语言 如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。 有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想) 是一种使用者不需花费很多时间学习的语言 你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。 你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。 你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。 在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。 当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢? Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台 J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。 Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading) Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台 是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能 我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
页:
[1]