fail-fast机制是Java集合(Collection)中的一种错误机制。在用迭代器遍历一个集合对象时,如果遍历过程中对集合对象的结构进行了修改(增加、删除),则会抛出ConcurrentModificationException(并发...
有序性(Ordering)是指在什么情况下一个处理器上运行的一个线程所执行的内存访问操作在另外一个处理器运行的其他线程看来是乱序的(OutofOrder)。乱序是指内存访问操作的顺序看起来发生了变化。有序性是Java多线程编程的3大特性之一...
我们在学习Java的过程中,接触了各自各样的方法函数,这些方法函数的调用能够实现不同的功能。同样的,泛型作为Java的一个特性,Java中也是有着泛型方法的。这里大家需要明确一点的是,泛型方法并不一定依赖其外部的类或者接口,它可以独立存在,...
类型擦除的概念是我们在初步学习Java泛型首先要了解的,这对我们后面的深入学习有很重要的意义,由浅入深,循序渐进,我们学习起来也能事半功倍。泛型这种语法糖,编译器会在编译期间「擦除」泛型语法并相应的做出一些类型转换动作。例如:publicc...
我们都知道Java8引入了lambda表达式,而方法引用是为了进一步简化lambda表达式,通过类名或者实例名与方法名的组合来直接访问到类或者实例已经存在的方法或者构造方法。方法引用使用**::来定义,::**的前半部分表示类名或者实例名,...
在Java8之前,接口中只能包含抽象方法。那么这有什么样弊端呢?比如,想再Collection接口中添加一个spliterator抽象方法,那么也就意味着之前所有实现Collection接口的实现类,都要重新实现spliterator这个方...
Map本身没有迭代器,因此Map需要借助外物来进行迭代,这其中包括各种方法和接口。下面我们就来看看常见的Map的4种迭代方法。1.利用Map接口的values()方法,返回此映射中包含的值的Collection(值不唯一),然后通过Coll...
泛型允许程序员在强类型程序设计语言中编写代码时使用一些以后才指定的类型,在实例化时作为参数指明这些类型。一些强类型程序语言支持泛型,其主要目的是加强类型安全及减少类转换的次数,但一些支持泛型的程序语言只能达到部分目的。尽管泛型为程序设计语言...
在Java中属性操作类是一个很重要的类,而要想明白属性操作类的作用,就必须先要清楚什么是属性文件,在属性文件中含有多个属性,每个属性就是直接用字符串表示出来的"key=value键/值对",而如果要想轻松操作这些属性需要...