了解下JAVA的初探Java 7非常处置功能加强
诸如RMI,EJB等一些技术并不是你说的那么复杂,而是它们把一些复杂的工具封装成不复杂的工具了,理解这些工具是需要些时间。我问你,.net里有这些工具吗?要简单多少?。之前我们先容过Java7的最新特征更新和代码示例,明天我们来看看Java7非常处置方面的功效加强。来自Coin项目标又一个渺小言语加强已被包括在Java7中:由谷歌兼任工程师兼Java讲师NealGafter提出的Java加强非常处置功效。OpenJDK开辟的向导者JoeDarcy已在其博客上公布了这个变更。
此次变化增添了两处对非常处置机制的渺小加强:
◆Multicatch:开辟者如今可以在一个catch代码块中捕捉多个非常范例;
◆FinalRethrow:它可让开辟者捕捉一个非常范例及其子范例,而且无需向办法声明中增添抛出子句,就可以从头将其抛出。
已往我们在捕捉多个非常范例时,常常会利用以下范例的代码:
} catch (FirstException ex)
{
logger.error(ex);
throw ex;
} catch(SecondException ex)
{
logger.error(ex);
throw ex; }
可是以上代码除冗杂外没有甚么长处。一个办理举措是找出这两个非常范例的配合子范例,只对其举行捕捉并抛出。可是这类办法一般会捕捉一些你其实不必要的非常。
如今借助于新增的功效,开辟者可使用以下代码:
} catch (FirstException | SecondException ex) {
logger.error(ex);
throw ex;
}
这类代码看上往要简便明晰的多。
第二个加强功效要庞大一些。假设开辟者但愿捕捉一切非常,在举行需要的几个操纵后,再将其抛出。就代码编写而言并非一件难事,可是开辟者必需在办法声明中增添一个抛出子句,来办理本人代码收回的新非常。而如今借助于FinalRethrow,开辟者无需增添一个非常抛出子句就可以完成此项义务:
try {
// some code
} catch (final Throwable ex) {
// some more code
throw ex;
}
经由过程利用final关头字,开辟者能够抛出所需的正确静态范例非常。如许假如一个IOException非常产生,那末IOException将被抛出。固然,开辟者必需声明不被捕捉的非常。假如开辟者在try代码块(在//somemorecode部分)中没有捕捉任何非常,抛出子句则与之前完整不异;反之假如捕捉到某些非常,开辟者则能够举行响应处置。
Java7中的multi-catch是一个十分好的功效,可是finalrethrow对程序员来讲其实不经常使用。
再说说缺点:首先java功能强大的背后是其复杂性,就拿web来说,当今流行的框架有很多,什么struts,spring,jQuery等等,而这无疑增加了java的复杂性。 你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。 有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想) Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。 关于设计模式的资料,还是向大家推荐banq的网站 http://www.jdon.com/,他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。 自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。 是一种为 Internet发展的计算机语言 Java 编程语言的风格十分接近C、C++语言。 Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
页:
[1]