JDK7、8新特性

JDK7、8分别提供了哪些新特性

JDK 7的新特性

  • switch 支持String字符串类型
  • try-with-resources,资源自动关闭
  • 整数类型如(byte,short,int,long)能够用二进制来表示
  • 数字常量支持下划线
  • 泛型实例化类型自动推断,即”<>”
  • 一个catch中捕获多个异常类型,用(|)分隔开
  • 增强的文件系统
  • Fork/join 框架

JDK8 的新特性

  • lambada表达式
  • 函数式接口
  • 方法引用(System.out::println 该符号为引用运算符,而它所在的表达式被称为方法引用)
  • 默认方法(接口)
  • Stream API
  • Optional
  • Date Time API(如LocalDate)
  • 重复注解(允许在同一申明类型(类,属性,或方法)的多次使用同一个注解)
  • Base64(一种基于 64 个可打印字符来表示二进制数据的表示方法,常用于在处理文本数据的场合,表示、传输、存储一些二进制数据,包括邮件、XML等一些复杂数据)
  • JVM的新特性(如元空间Metaspace代替持久代)

顺便说下Base64 编码过程

  • 按照从左往右的规则,每三个字节作为一组,一共就是24个二进制位。
  • 将这24个二进制位分为四组,每组6个二进制位。
  • 之后在每组数据前面添加00,组成每个组8个二进制位,此时变成了32个二进制位,即四个字节
  • 四个字节在Base64 索引表查找得到的对应符号,base64编码完成

Base64 解码原理

  • 解码原理是将4个字节转换成3个字节,先读入4个6位(用或运算),每次左移6位,再右移3次,每次8位,这样就还原了。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值