哪些类型可以有Class对象?
class:外部类,成员(成员内部类,静态内部类),局部内部类,匿名内部类。
interface:接口
[]:数组
enum:枚举
annotation:注解@interface
primitive type:基本数据类型
void
package 反射;
import java.lang.annotation.ElementType;
//所有类型的class
public class Tset1 {
public static void main(String[] args) {
Class c1=Object.class;//类
Class c2=Comparable.class;//接口
Class c3=String[].class;//一维数组
Class c4=int[][].class;//二维数组
Class c5=Override.class;//注解
Class c6= ElementType.class;//枚举类
Class c7=Integer.class;//基本数据类型
Class c8=void.class;//void
Class c9=Class.class;//class
System.out.println(c1);
System.out.println(c2);
System.out.println(c3);
System.out.println(c4);
System.out.println(c5);
System.out.println(c6);
System.out.println(c7);
System.out.println(c8);
System.out.println(c9);
//只要元素类型与维度一样,就是同一个class
int []a=new int[10];
int []b=new int[100];
//结果一致
System.out.println(a.getClass().hashCode());
System.out.println(b.getClass().hashCode());
}
}