javapoter-获取泛型类型
我正在玩注释处理器和JavaPoter。我有一个我用@MyAnno注释的方法:javapoter-获取泛型类型,java,android,annotations,javapoet,Java,Android,Annotations,Javapoet,我正在玩注释处理器和JavaPoter。我有一个我用@MyAnno注释的方法: @MyAnno Observable<MyClass> get(int id); 这给了我: AsyncSubject<Observable<MyClass>> AsyncSubject 如何仅获取MyClass?如果返回的类型始终是可观察的,则可以将get(executableElement.getReturnType())的结果强制转换为ParameterizedType
@MyAnno
Observable<MyClass> get(int id);
这给了我:
AsyncSubject<Observable<MyClass>>
AsyncSubject
如何仅获取MyClass?如果返回的类型始终是可观察的
,则可以将get(executableElement.getReturnType())
的结果强制转换为ParameterizedTypeName
,并访问第一个类型参数:
((ParameterizedTypeName) get(executableElement.getReturnType()).typeArguments.get(0)
类型、容量和健全性检查适用
AsyncSubject<Observable<MyClass>>
((ParameterizedTypeName) get(executableElement.getReturnType()).typeArguments.get(0)