黑马程序员技术交流社区
标题:
数组属于自己的类吗?
[打印本页]
作者:
李政
时间:
2013-8-5 17:23
标题:
数组属于自己的类吗?
本帖最后由 杨兴庭 于 2013-8-7 18:04 编辑
在学到注释类的时候,联想到了好些问题
让我把java的数据类型搞的很糊涂
数组也是一个对象,那么它有属于自己的类吗?
数组是属于class这种引用数据类型的体系吗? 是不是与class同级的?
与class同级的引用数据类型都有哪些呢?interface @interface enum 这些是吗
作者:
佟都
时间:
2013-8-5 18:13
本帖最后由 佟都 于 2013-8-6 00:11 编辑
可以用反射自己写段代码验证下
import java.lang.reflect.*;
import java.util.Arrays;
public class ReflectTest {
public static void main(String[] args) throws Exception {
String str1 = "abc";
//数组的反射操作
//int [] a1 = new int[3];
int [] a1 = new int[]{1, 2, 3};
int [] a2 = new int[4];
int[][] a3 = new int[2][3];
//String [] a4 = new String[3];
String [] a4 = new String[]{"a", "b", "c"};
Class a1Clz = a1.getClass();
Class a2Clz = a2.getClass();
Class a3Clz = a3.getClass();
Class a4Clz = a4.getClass();
System.out.println("a1Clz == a2Clz is "+ (a1Clz == a2Clz));
System.out.println("a1Clz == a3Clz is "+ (a1Clz == a3Clz));
System.out.println("a1Clz == a4Clz is "+ (a1Clz == a4Clz));
//JDK1.6 : Incompatible operand types Class
//System.out.println(a1.getClass() == a4.getClass());
//获取Array的Class类型名
System.out.println("a1.getClass().getName() = "+ a1Clz.getName());
//获取Array的父类Class类型名
System.out.println("a1Clz.getSuperclass().getName() = "+ a1Clz.getSuperclass().getName());
System.out.println("a4Clz.getSuperclass().getName() = "+ a4Clz.getSuperclass().getName());
}
}
复制代码
作者:
心灵之歌
时间:
2013-8-5 18:44
数组在内存中的存储是以对象的形式存在,数组是属于引用类型!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2