简要描述:其实在jdk1.6中就引入了支持脚本语言的API.这使得java能够很轻松的调用其他脚本语言.具体API的使用参考下面的代码: package com.rampage.jdk7.chapter2; import java.io.FileWriter; import java.io.IOException; import javax.script.Bindings; import javax.script.Compilable; import javax.script.CompiledS…
直接通过一个代码示例来熟悉java中通过反射来对构造函数/域以及方法处理的相关API: package com.rampage.jdk7.chapter2; import java.lang.reflect.Array; import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang.…
jdk1.7新特性 1 对集合类的语言支持: 2 自动资源管理: 3 改进的通用实例创建类型推断: 4 数字字面量下划线支持: 5 switch中使用string: 6 二进制字面量: 7 简化可变参数方法调用.  下面我们来仔细看一下这7大新功能:       1 对集合类的语言支持       Java将包含对创建集合类的第一类语言支持.这意味着集合类的创建可以像Ruby和Perl那样了.       原本需要这样:          List<String> list = new Arr…
1.Web服务元数据 Java 里的Web服务元数据跟微软的方案基本没有语义上的区别,自从JDK5添加了元数据功能(Annotation)之后,SUN几乎重构了整个J2EE体 系, 由于变化很大,干脆将名字也重构为Java EE, Java EE(当前版本为5.0)将元数据纳入很多规范当中,这其中就包括Web Services的相关规范, 加入元数据之后的Web Services服务器端编程模型就跟上面看到的C#片断差不多了, 这显然比以前的JAX-RPC编程模型简单(当然, Axis的编程模型…
Web service是一个平台独立的,松耦合的,自包含的.基于可编程的web的应用程序,可使用开放的XML标准来描述.发布.发现.协调和配置这些应用程序,用于开发分布式的互操作的应用程序. Web services涉及技术: XML XML是在web上传送结构化数据的伟大方式,Web services要以一种可靠的自动的方式操作数据,HTML不会满足要求,而XML可以使web services十分方便的处理数据,它的内容与表示的分离十分理想 SOAP 即Simple Object Access…
集合框架在JDK1.5中增强特性如下: 一. 新语言特性的增强 泛型(Generics)- 增加了集合框架在编译时段的元素类型检查,节省了遍历元素时类型转换代码量. For-Loop循环(Enhanced for loop)- 节省了遍历集合中显式iterators的调用. 自动装箱/拆箱(Autoboxing/unboxing)- 自动将基本类型及其包装类之间进行互相转换. 更多阅读:JDK1.5新特性,语言篇 二. 增加了三个新的接口 Queue - 队列接口,除了基本的集合操作外,它还提供…
import java.util.ArrayList; /* jdk1.5新特性之-----自动装箱与自动拆箱. java是面向对象 的语言,任何事物都可以使用类进行描述,sun就使用了 一些类描述java中八种基本数据类型数据 基本数据类型 包装类型 byte Byte short Short int Integer long Long float Float double Double boolean Boolean char Character 基本数据类型数据有了对应 的包装 类型的好处…
异常 jdk1.7对try--catch--finally的异常处理模式进行了增强,下面我们依次来看增强的方面. 1. 为了防止异常覆盖,给Throwable类增加了addSuppressed方法,可以将一个异常信息追加到另一个异常信息之后: /** * 这是第一种防止前面异常被覆盖的方法,通过在finally块中判断前面是否有异常抛出 * 如果有则最终抛出的异常为原来的异常,没有则最终抛出的异常为finally块中的异常. * 此时只能抛出一种异常信息. * @param fileName *…
我们继续看lambda表达式的应用: public void urlExcuAspect(RpcController controller, Message request, RpcCallback done) { if (Util.isEmpty(request)) { return; } Descriptor descriptor = request.getDescriptorForType(); if (Util.isEmpty(descriptor)) { return; } Field…
lambda表达式其实就是指一个匿名函数,应用最广泛的就是匿名内部类的简化.在jdk1.8之前,我们定义一个匿名内部类可能需要写一大坨代码,现在有了lambda之后,可以写的很简洁了.但不是说lambda只能用来简化匿名内部类,从lambda的实际作用和表现上来看,它就是一个变量指代了一个代码块.而能够使用lambda表达式的一个前提要求是,该变量必须实现某个函数式接口.啥是函数式接口?参考jdk1.8新特性之函数式接口.看一个匿名内部类的例子: FutureTask<String> cove…