美文网首页
java7特性

java7特性

作者: 梓青 | 来源:发表于2016-11-11 19:33 被阅读28次

标签:java

java7 特性

异常处理

异常类的构造器有可以接受两个参数,
分别用来禁用忽略异常和禁用堆栈跟踪

忽略异常:
当第一个异常产生后,需要执行其他清理操作(finally()||资源关闭),   
但是在执行过程中又产生了其他异常;   
可以调用ex.addSupressed(ex2),加入忽略异常   
(产生多个异常)   
堆栈跟踪:
产生异常时代码的执行链    
(只产生一个异常)   


/**
 * 1.try-with-resource语句
 * 2.忽略异常
 */
private void exceptionTest(){
    try(Scanner in=new Scanner(Paths.get("路径"))){
        in.hasNext();
    }catch (IOException e){

    }
}

文件使用

Path路径,一个文件路径的抽象

创建
//creat
Paths.get("root","dir1","file.txt");// 相对路径,/root/dir1/file.txt;
Paths.get("/","dir1","file.txt");//    绝对路径,/为根目录,取决于操作系统

//组合、解析路径
Path p1=Paths.get("root","dir1");
Path p2=Paths.get("conf.txt");

p1.resolve(p2);//返回/root/dir1/conf.txt.产生子目录
p1.resolveSibling("dir2");//返回/root/dir2.产生兄弟目录
p1.toAbsolutePath();//返回指定路径的绝对路径,根据调用JVM的路径进行解析,如在/JVM下启动应用,则返回./JVM/root/dir1
读取,写入
/**
* 读取、写入,复制文件
*/
//read
//all
Files.readAllBytes(p1);//new String(byte[],charset)转换
//byLine
Files.readAllLines(p1);
//write
Files.write(p1,"内容".getBytes(), StandardOpenOption.APPEND);//追加写入

//处理大文件的时候,转换为Stream||reader/Writer
InputStream in=Files.newInputStream(p1);
OutputStream out=Files.newOutputStream(p1);
Reader reader=Files.newBufferedReader(p1);
Writer writer=Files.newBufferedWriter(p1);

//文件复制copy可以将Path和in||out连接起来
Files.copy(in,p1);
Files.copy(p1,out);
创建文件、目录
/**
* 创建文件和目录
*/
//creat dir
Files.createDirectory(p1);
Files.createDirectories(p1);//递归创建
//creat file
Files.createFile(p1);
Files.exists(p1);//判断文件是否存在
复制,移动,删除
/**
* 复制,copy
* 移动,move
* 删除文件 delete() deleteIfExists()
*/
其他改进
private void otherTest(){
    //eauals()中的null判断
    Integer a=1;
    Integer b=2;
    // a==null && b==null,return true;
    // a==null && b!=null,return false;
    // other a.equals(b);
    Objects.equals(a,b);

    //计算hash码
    //对象有实例变量a,b,hash重写 Objects.hash(a,b);

    //数值比较
    //return (a-b);如果b为负数,有溢出的风险,使用Integer.compare(a,b);
}

相关文章

  • Java7新特性及使用

    Java7新特性及使用 新特性列表 以下是Java7中的引入的部分新特性。 switch支持String try-...

  • java7特性

    标签:java java7 特性 异常处理 异常类的构造器有可以接受两个参数,分别用来禁用忽略异常和禁用堆栈跟踪 ...

  • Java11的新特性

    Java语言特性系列 Java5的新特性 Java6的新特性 Java7的新特性 Java8的新特性 Java9的...

  • Java15的新特性

    Java语言特性系列 Java5的新特性 Java6的新特性 Java7的新特性 Java8的新特性 Java9的...

  • Java12的新特性

    Java语言特性系列 Java5的新特性 Java6的新特性 Java7的新特性 Java8的新特性 Java9的...

  • java7新特性3——目录与目录树遍历

    虽然现在都使用Java8了,但是Java7的新特性你是否都知道了呢? Java7之前,虽然能做到遍历目录与目录树,...

  • Java7语法新特性

    可能有点标题党了,有些特性其实是在Java5引入的,包括泛型、基本类型的自动装箱拆箱、参数长度可变、注解等等。下面...

  • java7新特性2——IO Path

    虽然现在都使用Java8了,但是Java7的新特性你是否都知道了呢? Java7中重大的变更之一是新的IO及NIO...

  • 从Java5到Java12每个版本的新特性(2)

    Java5到Java7的新特性见这里:https://www.jianshu.com/p/a051a2f0c3ab...

  • Java AIO基础

    Java AIO(异步IO)特性是在Java7引入的。 [TOC] 同步异步、阻塞非阻塞的理解 同步和异步 同步和...

网友评论

      本文标题:java7特性

      本文链接:https://www.haomeiwen.com/subject/ulbfpttx.html