简介GenericArrayType是Type的子接口,用于表示“泛型数组”,描述的是形如:A<T>[]或T[]的类型。其实也就是描述ParameterizedType类型以及TypeVariable类型的数组,即形如:classA<T>[][]、T[]等。Type getGenericComponentType()获取“泛型数组”中元素的类型,要注意的是:无论从左向右有几
2022-12-06 michael007js 174
简介GenericDeclaration接口继承了AnnotatedElement接口,是所有“可以声明(定义)范型变量”的实体(如Class,Constructor,Method)的公共接口。也就是说只有实现了这个接口的才能在对应“实体”上声明“范型变量”。所谓范型变量就是<E extends List>或者<E>, 也就是TypeVariable<D extend
2022-12-06 michael007js 178
简介TypeVariable是“类型变量”(或者叫“泛型变量”更准确些)的通用的顶级接口。在泛型编程中会用到“泛型变量”来描述类型,或者说是用来表示泛型。一般用大写字母作为类型变量,比如K、V、E等。说到TypeVariable<D extends GenericDeclaration>就不得不提起java泛型中另一个比较重要的接口对象,GenericDeclaration接口对象。该
2022-12-06 michael007js 193
简介ParameterizedType是Type的子接口,表示一个有参数的类型,例如Collection<T>,Map<K,V>等。但实现上 ParameterizedType并不直接表示Collection<T>和Map<K,V>等,而是表示 Collection<String>和Map<String,String>等这种具
2022-12-06 michael007js 162
泛型出现之前没有泛型的时候,只有所谓的原始类型。此时,所有的原始类型都通过字节码文件类Class类进行抽象。Class类的一个具体对象就代表一个指定的原始类型。泛型出现之后泛型出现之后,扩充了数据类型。从只有原始类型扩充了参数化类型(ParameterizedType)、类型变量类型(TypeVariable)、泛型限定的参数化类型 (含通配符+通配符限定表达式)(WildcardType)、泛型
2022-12-06 michael007js 86
通常情况下,Server端返回的json数据应该可以一次性完全解析,但是要是遇到server返回的json里又包含json字符串就得自己再手动解析一次了。我们知道json字符串解析成模型类型很简单,但是如果要把json数组字符串解析List对象,应该怎么办呢?举一个实际的例子:[ { "name": "zhaoxa", &quo
2022-12-06 michael007js 1561
这些只是自己测试的一些发现和理解做个记录,如果那里不对还请不吝赐教onDraw()先于dispatchDraw()执行,用于本身控件的绘制,dispatchDraw()用于子控件的绘制onDraw()绘制的内容可能会被子控件覆盖而dispatchDraw()是子控件的绘制,所以是覆盖在onDraw()上的布局:<?xml version="1.0" encoding=&q
2022-12-06 michael007js 122
在Android的PorterDuff.Mode类中列举了他们制定的规则:android.graphics.PorterDuff.Mode.SRC:只绘制源图像android.graphics.PorterDuff.Mode.DST:只绘制目标图像android.graphics.PorterDuff.Mode.DST_OVER:在源图像的顶部绘制目标图像android.graphics.Port
2022-12-06 michael007js 532