Jdk1.7新特性
1.自动资源管理
Java中某些资源是需要手动关闭的,如InputStream,Writes,Sockets,Sql classes等。这个新的语言特性允许try语句本身申请更多的资源,
这些资源作用于try代码块,并自动关闭。
2.新增一些取环境信息的工具方法
System.getJavaHomeDir() // JRE的安装目录
File System.getUserHomeDir() // 当前用户目录
File System.getUserDir() // 启动java进程时所在的目录
3.两个char间的equals
4.switch中使用string
Jdk1.8新特性
1.函数式接口
函数式接口(functional interface 也叫功能性接口,其实是同一个东西)。简单来说,函数式接口是只包含一个方法的接口。比如Java标准库中的java.lang.Runnable和java.util.Comparator都是典型的函数式接口。java 8提供 @FunctionalInterface作为注解,这个注解是非必须的,只要接口符合函数式接口的标准(即只包含一个方法的接口),虚拟机会自动判断,但 最好在接口上使用注解@FunctionalInterface进行声明,以免团队的其他人员错误地往接口中添加新的方法。
2.Lambda语法
包含三个部分
1.一个括号内用逗号分隔的形式参数,参数是函数式接口里面方法的参数
2.一个箭头符号:->
3.方法体,可以是表达式和代码块,方法体函数式接口里面方法的实现,如果是代码块,则必须用{}来包裹起来,且需要一个return 返回值,但有个例外,若函数式接口里面方法返回值是void,则无需{}
(parameters) -> expression 或者 (parameters) -> { statements; }
lambda表达式语法代码简洁,能简化集合上数据的多线程或者多核的处理,提供更快的集合处理速度
3.两个char间的equals
4.switch中使用string
JDK常用的包
◆java.lang: 这个是系统的基础类,比如String、Math、Integer、System和Thread,提供常用功能。在java.lang包中还有一个子包:java.lang.reflect用于实现java类...
◆java.io: 这里面是所有输入输出有关的类,比如文件操作等
◆java.net: 这里面是与网络有关的类,比如URL,URLConnection等。
◆java.util : 这个是系统辅助类,特别是集合类Collection,List,Map等。
◆java.sql: 这个是数据库操作的类,Connection, Statememt,ResultSet等