数组:
无论使用的数组属于什么类型,数组标识符实际都是指向真实对象的一个句柄。那些对象本身都在堆中创建。数组对象唯一能访问的字段是只读的length成员,它告诉我们那个数组对象里最多能容纳多少元素;对于数组对象,“[ ]”语法是我们能采用的唯一另类访问方法。
int[] arr1;
int[] arr2 = {1, 2, 3, 4, 5};
arr1 = arr2;
//基本类型数组会初始化成零(数值类型)、null(引用类型)或者false(布尔类型)。
int[] arr3 = new int[5];
int[][] a11 = new int[2][4];
int[][] arr12 = {
{1, 2, 3},
{4, 5, 6}};
//提供初始化块时,new不能指定维度
int[][] arr13 = new int[][] {
{1, 2, 3, 4, 5},
{4, 5, 6}};
Integer[] obj1 = new Integer[] {1, 2, 3};
Integer[] obj2 = new Integer[] {new Integer(1), new Integer(2)};
Object[] obj3 = new Object[] {1, "abcd", new Integer(2),
new String("hello world"), new Object()};
//引用类型数组会自动初始化为null
Object[][] obj11 = new Object[2][];
for(Object[] obj : obj11)
obj = new Integer[3];
1.2新集合:Collection、List 、Set和Map。
点线框代表接口,虚线框代表抽象类,实线框代表普通类(具体实现)。点线箭头表示一个特定的类准备实现一个接口(在抽象类的情况下,则是部分实现一个接口)。双线箭头表示一个类可生成箭头指向的那个类的对象。
在类的分级结构中,可看到大量以Abstract (抽象)开头的类,它们实际上是一些工具,用于部分实现一个特定的接口。