仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 454|回复: 8
打印 上一主题 下一主题

[学习教程] 了解下JAVA的初探Java 7非常处置功效加强

[复制链接]
蒙在股里 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:03:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
诸如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的复杂性。
海妖 该用户已被删除
沙发
发表于 2015-1-20 13:19:53 | 只看该作者
你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。
飘灵儿 该用户已被删除
板凳
发表于 2015-1-23 08:04:39 | 只看该作者
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
谁可相欹 该用户已被删除
地板
发表于 2015-1-25 20:14:32 | 只看该作者
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
若天明 该用户已被删除
5#
发表于 2015-2-9 04:38:53 | 只看该作者
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
蒙在股里 该用户已被删除
6#
 楼主| 发表于 2015-2-26 22:35:55 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
飘飘悠悠 该用户已被删除
7#
发表于 2015-3-8 18:21:46 | 只看该作者
是一种为 Internet发展的计算机语言
第二个灵魂 该用户已被删除
8#
发表于 2015-3-16 09:48:26 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
再见西城 该用户已被删除
9#
发表于 2015-3-22 22:09:57 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-16 18:38

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表