注意:所有文章除特别说明外,转载请注明出处.
泛型
泛型表示将集合中的一个元素限定为一个特定的类型。参数化类型,将类型由原来的具体的类型参数化,类似于方法中变量参数。在使用泛型类时,虽然传入了不同的泛型参数,但是并没有真正意义上生成不同的类型,传入不同的泛型实参的泛型类在内存上只有一个,没有真正意义上生成不同的类型,传入不同参数的泛型类在内存上只有一个,即还是原来的基本类型,在逻辑上可以理解成多个不同的泛型类型。
注意:所有文章除特别说明外,转载请注明出处.
注解(Annotation),也叫元数据。一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明,注释。
注意:Annotation是一个接口,程序可以通过反射来获取指定程序元素的Annotation对象,然后通过Annotation对象来取得注解里的元数据。此外Annotation不影响程序代码的执行,无论增加、删除Annotation,代码都始终如一的执行。访问和处理Annotation的工具统称API。
注意:所有文章除特别说明外,转载请注明出处.
Java的类加载器就是在运行时在JVM中动态地加载所需的类,Java类加载器基于三个机制:委托、可见、单一。将classpath下的那些.class文件加载进内存,处理后成为字节码,这些工作是类加载器做的。
注意:所有文章除特别说明外,转载请注明出处.
[TOC]
注意:Object类型的数组可以存储任意类型的数据。
集合是存储对象数据的容器。
1.集合比数组的优势:
1.集合可以存储任意类型的数据,数组只能存储同一种数据类型的数据(Object类型的数组除外)。
2.集合的长度是会发生变化的,数组的长度是固定的。
2.集合类的继承体系:
Collection:是所有单例集合的根接口,其有两个接口List/Set
Set:如果实现了Set接口的集合类,具备特点:无序、不可重复。
List:如果实现了List接口的集合类,具备的特点:有序、可重复。有序:集合的有序不是指自然顺序,而是指添加进去的顺序与元素出来的顺序一致。
提示:Collection与Collections的区别在于Collection是一个集合接口,其提供了对集合对象进行操作的通用接口方法。实现接口类主要有List/Set,该接口的设计是为各种具体的集合提供最大化的统一操作方式。Collections是针对集合类的一个包装类,它提供了一系列静态方法以实现对各种集合的搜索、排序、线程安全化等操作。
注意:所有文章除特别说明外,转载请注明出处.
//ArrayList继承关系
java.lang.Object
↳ java.util.AbstractCollection<E>
↳ java.util.AbstractList<E>
↳ java.util.ArrayList<E>
public class ArrayList<E> extends AbstractList<E>
implements List<E>, RandomAccess, Cloneable, java.io.Serializable {}
ArrayList继承了AbstractList,实现了List。它是一个数组队列,相当于动态数组。提供了相关的添加、删除、修改和遍历等功能。
注意:所有文章除特别说明外,转载请注明出处.
Collection是一个接口,它主要的两个分支是List和Set。List和Set都是接口,它们继承与Collection。List是有序的队列,可以用重复的元素;而Set是数学概念中的集合,不能有重复的元素。List和Set都有它们各自的实现类。