H5的表单新特性可以分为两大类. 一.10个input的type值 1.email:邮件输入域,在表单提交时提供简单的邮箱格式验证,并弹出一个提示窗口. 2.url:地址输入域,在表单提交时提供简单的URL地址格式验证,并弹出一个提示窗口. 3.number:数字输入域.(可设置min.max.step) 4.tel:电话号码输入域,在手机浏览器中弹出数字输入域. 5.search:搜索输入域,在手机浏览器右下角呈现搜索按键. 6.range:范围选择控件. 7.color:颜色选择控件. 8.…
一.JDK1.8优点概括 1.速度更快 由于底层结构和JVM的改变,使得JDK1.8的速度提高. 2.代码更少(增加了新的语法 Lambda 表达式)          增加新特性Lambda表达式的内部类改造,使得代码在书写上变得更加简洁 3.强大的 Stream API 增加了核心功能,使得代码调用方式变得更加简洁 4.便于并行 5.最大化减少空指针异常 Optional…
1.jdk8新特性 1.新特性 2.lambda函数表达式的作用 A: 替换内部类 B:对集合的操作并行化…
1.类的加载概述和加载时机 * A:类的加载概述 * 当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三步来实现对这个类进行初始化. * 加载 * 就是指将class文件读入内存,并为之创建一个Class对象.任何类被使用时系统都会建立一个Class对象. * 连接 * 验证 是否有正确的内部结构,并和其他类协调一致 * 准备 负责为类的静态成员分配内存,并设置默认初始化值 * 解析 将类的二进制数据中的符号引用替换为直接引用 * 初始化 就是我们以前讲过的初始化…
流式编程是1.8中的新特性,基于常用的四种函数式接口以及Lambda表达式对集合类数据进行类似流水线一般的操作 流式编程分为大概三个步骤:获取流 → 操作流 → 返回操作结果 流的获取方式 这里先了解获取流的常用的两种方式,后面在进行流的操作 集合中获取流 众所周知Java中所有的集合都是Collection下的实现类,在Collection接口中就提供了获取流的方法: public class ApplicationMain { public static void main(String[]…
SpingMVC的内容协商支持三种方式: 使用后缀,如json.xml后缀和处理类型的关系可以自己定义 前面说的使用Accept头 在访问时request请求的参数,比如每次请求request都会加format=xml参数,表示要求返回XML格式数据,默认参数名是format,可以修改. SpingMVC规定,如果同时开启了上面的部分或全部方式,解析顺序是后缀.参数.Accept头.对我来说,还是比较喜欢用Accept头,用的时间长,比较适应. SpingMVC文件中的配置方式如下: <!--…
1.5.Optional类 1.定义 Optional 类是一个可以为null的容器对象.如果值存在则isPresent()方法会返回true,调用get()方法会返回该对象. Optional 是个容器:它可以保存类型T的值,或者仅仅保存null.Optional提供很多有用的方法,这样我们就不用显式进行空值检测. Optional 类的引入很好的解决空指针异常. 2.声明 以下是一个 java.util.Optional<T> 类的声明: public final class Option…
自动属性初始化表达式 有过正确实现结构经验的所有 .NET 开发人员无疑都为一个问题所困扰:需要使用多少语法才能使类型固定不变(为 .NET 标准建议的类型).此问题实际上是只读属性存在的问题: 定义为只读的支持字段 构造函数内支持字段的初始化 属性的显式实现(而非使用自动属性) 返回支持字段的显式 getter 实现 所有这一切仅仅是为了“正确地”实现固定不变的属性.之后,此情况还会针对类型的所有属性重复发生.因此,正确操作需要比不堪一击的方法付出明显更多的努力.发布了自动属性初始化表达式(C…
一.一致性初始化(uniform initialization) 之前初始化时存在多个版本,让使用者使用时比较混乱,现在提供一种万用的初始化方法,就是使用大括号. 原理解析:当编译器看到大括号包起来的东西时,会生成一个initializer_list<T>(initializer_list它其实是关联一个array<T,n>),然后再调用构造函数时,一个个从array分解取出来然后调用构造函数,但是如果这个函数自身提供了initializer_list<T>参数类型的构…
一.版本中数据结构的修改浅析1.HashMap.HashSet.ConcurrentHashMap的数据结构发生变化 (1)HashMap简介(结构:哈希表+链表) HashMap存储的数据是无序的,结构哈希表加链表的存储方式,key不能重复,哈希表就是数组,存储的数组都是entry,初始大小默认是16,HashMap底层使用哈希算法原理:当创建一个对象,想要加入到HashMap,会默认调用底层的一个方法hashCode(). HashMap算出索引值,会上对应的链表中找是否有对象,如果没有对象…