java 泛型体系
来源:互联网 发布:dd archlinux mac 编辑:程序博客网 时间:2024/05/28 09:33
1.1 AnnotatedElement
表示目前正在此 VM 中运行的程序的一个已注释元素。该接口允许反射性地读取注释。由此接口中的方法返回的所有注释都是不可变并且可序列化的。
1.2 AccessibleObject
在反射时,控制类中属性的访问权限。默认反射是不能访问类的私有方法,但是可以使用AccessibleObject.setAccessible(fields, true); 指定访问权限以访问类的私有属性
1.3 GenericDeclaration
声明类型变量的所有实体的公共接口,也就是说,只有实现了该接口才能在对应的实体上声明类型变量。(个人理解 Array
http://www.cnblogs.com/baiqiantao/p/7475696.html
1.4 Member
可以通过反射获取变量、方法、构造的信息
1.5 Field
封装了公有、私有、静态、实例变量的操作
1.6 Method
封装了公有、私有、静态、实例方法的操作
1.7 Parameter
提供关于方法参数的信息
1.8 Class
类的实例是对象,Class的实例是类或接口,Class类没有公有的构造方法,它由JVM自动调用
1.9 Type类型
它是所有类型的公共接口。包括原始类型、参数化类型、数组类型、类型变量和基本类型。它有四个子类:ParameterizedType, TypeVariable, WildcardType,GenericArrayType。
2、Type类型
2.1 ParameterizedType
参数化类型,形如:Object
主要方法:
//1.获得<>中实际类型 如T,KType[] getActualTypeArguments();//2.获得<>前面实际类型 如ObectType getRawType();//3.如果这个类型是某个类型所属,获得这个所有者类型,否则返回nullType getOwnerType();
2.2 TypeVariable
类型变量,如参数化类型中的E、K等类型变量,表示泛指任何类,如果加上extends/super限定,则就会有相应的上限、下限。
主要方法:
//如:class A<X extends C>//获得泛型的上限,若未明确声明上边界则默认为Object。这里是CType[] getBounds();//获取声明该类型变量实体(即获得类、方法或构造器名)。类名AD getGenericDeclaration();//获得名称,即K、V、E之类名称。这里是XString getName();
2.3 GenericArrayType
泛型数组,描述的是ParameterizedType类型以及TypeVariable类型数组,即形如:classA[][]、T[]等
//获得这个数组元素类型,即获得:A<T>[]返回A<T>或T[]返回TType getGenericComponentType();
2.4 WildcardType
通配符表达式,或泛型表达式,它虽然是Type的一个子接口,但并不是Java类型中的一种,表示的仅仅是类似 ? extends T、? super K这样的通配符表达式。
//获得泛型表达式上界(上限)Type[] getUpperBounds();//获得泛型表达式下界(下限)Type[] getLowerBounds();
3、Java类型分类
Java的所有类型包括:
- raw type:原始类型,对应Class 指平常所指的类,还包括数组、接口、注解、枚举等结构。
- parameterized types:参数化类型,对应ParameterizedType
- array types:数组类型,对应GenericArrayType
- type variables:类型变量,对应TypeVariable
- primitive types:基本类型,仍然对应Class
1). 3中的数组类型GenericArrayType,应该指的是2、4类型数组,而不是一般我们说的数组,我们一般所说的数组是指1、5类型数组,他们还是1,也就是Class类型。
2). List
参考:
http://blog.csdn.net/a327369238/article/details/52621043
http://blog.csdn.net/u012422440/article/details/48948921
- java 泛型体系
- Java泛型之Type体系
- Java泛型中的Type体系
- Java泛型之Type体系
- JAVA体系
- Java安全体系简介
- Java I/O 体系
- Java技术体系图
- Java技术体系图
- java技术体系
- Java技术体系
- Java技术体系
- Java技术体系
- JAVA知识体系
- java&jvm体系结构图
- Java异常体系
- java体系学习路线
- Java技术体系
- 软考——现在开始
- 算法练习(1):Add Two Numbers
- Codeforces Round #430 (Div. 2)
- 源码编译出现的问题cmake 提示C compiler was not found和Cxx complier was not found解决办法
- 常用正则表达式
- java 泛型体系
- 玩具 二分+贪心+并查集(这个。。IOI签到题?)
- 深度学习系列教程 -1.2.4 神经网络是如何进行学习的
- Pixhawk2 interface with other tools (edison,mavproxy,dronkit.....)
- angular敏感文字自动过滤
- linux下利用单链表增加和删除节点实例
- 腾讯2017暑期实习生编程题之有趣的数字
- 1641: [Usaco2007 Nov]Cow Hurdles 奶牛跨栏
- 【ArcGIS Server】切片时C盘空间不足(本地缓存目录空间不足)