java7特性

标签: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);
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,868评论 18 139
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 46,937评论 6 342
  • 这篇文章是我之前翻阅了不少的书籍以及从网络上收集的一些资料的整理,因此不免有一些不准确的地方,同时不同JDK版本的...
    高广超阅读 15,690评论 3 83
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,754评论 18 399
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,356评论 11 349