JDK7的新特性(总结---for面试官)

JDK7新特性

  1. 二进制字面量。Java7添加二进制表示(0B11110001、0b11110001)
  2. 数字字面量可以出现下划线。Java7中支持在数字量中间添加’_’作为分隔符。更直观,如(12_123_456)。下划线仅仅能在数字中间。编译时编译器自己主动删除数字中的下划线。
  3. Switch语句中可以用字符串。
    例如:

    String s = "a";
        switch (s) {
            case "a":
                System.out.println("is a");
                break;
            case "b":
                System.out.println("is b");
                break;
            default:
                System.out.println("is c");
                break;
    }

    4.泛型简化,泛型实例化类型自动推断。
    例如:Map < String, Integer > anagrams = new HashMap<>();
    5.异常的多个catch合并,每个异常用‘|’隔开。
    例如:

    public void newMultiCatch() {  
    
           try {  
    
                 methodThatThrowsThreeExceptions();  
    
           } catch (ExceptionOne | ExceptionTwo | ExceptionThree e{ 
                 // log and deal with all Exceptions  
           }  
    
     }  

    6.try-with-resources语句
    java7以前对某些资源的操作是需要手动关闭,如InputStream,Writes,Sockets,Sql等,需要在finally中进行关闭资源的操作,现在不需要使用finally来保证打开的流被正确关闭,现在是自动完成的,会自动释放资源,确保每一个资源在处理完成后都会关闭,就不需要我们代码去close();
    在采用try-with-resources方式后,不需要再次声明流的关闭。
    可以使用try-with-resources的资源有:
    任何实现了java.lang.AutoCloseable接口和java.io.Closeable接口的对象。为了支持这个行为,所有可关闭的类将被修改为可以实现一个Closable(可关闭的)接口。

猜你喜欢

转载自blog.csdn.net/bigdata_mining/article/details/80875123