天天看点

Java数组(Array)_基本概念_内存分析

数组是相同类型数据的有序集合

数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成。其中,每一个数据称作数组元素,每个数组元素可以通过一个下标来访问它们。

数组有三个特点:

1、其长度是确定的。数组一旦被创建,它的大小就是不可以改变的。

2、其元素必须是相同的类型,不允许出现混合类型;

3、数组中的元素可以是任何数据类型,包括基本类型和引用类型。

例子:

package com.ws.array;

public class test01 {

	public static void main(String[] args) {
		int a[]=new int[3];
		a[0]=28;
		a[1]=03;
		a[2]=78;
		
		hero[] heros=new hero[2];
		heros[0]=new hero("大法师");
		
		System.out.println(heros[0].name);
		for (int i=0;i<a.length;i++)
		{
			System.out.println(a[i]);
		}
		
	}
}

class hero {
	String name;

	public hero(String name) {
		super();
		this.name = name;
	}
	
}
           

输出:

大法师
28
3
78
           

内存分析:

Java数组(Array)_基本概念_内存分析

只要知道数组是对象,内存分析图就很容易画出来,和上文的画法一样,栈区存放变量,堆区存放对象和方法区。a[3]是基本类型,直接创建对象,分配地址,将数值放在分配的地址即可。hero是类,先在方法区加载源代码、静态变量和方法以及常量,根据加载的源代码创建出hero对象,对象都是通过地址进行引用的,所以是引用类型。

数组是Java的三种引用类型之一,其它两种前文已经介绍过了,是类和接口。