AsyncTask java.lang.ClassCastException: java.lang.Object[] cannot be cast to java.lang.Void[] 异常
2015-10-21 09:51
615 查看
最近在学习使用AsyncTask,想用多态的思想使用即:编译类型不等于运行时类型(编译类型必须是运行时类型的父类或者运行时类型实现了编译类型接口)
private AsyncTask mCacheTask = new CacheTask();
结果出现了java.lang.ClassCastException: java.lang.Object[] cannot be cast to java.lang.Void[] 异常信息。
针对这种情况有两种解决方法:
1、不使用多态的方法 即让 编译类型等于运行时类型。
CacheTask mCacheTask = new CacheTask();
2、继续使用多态,不过这时候就需要将声明的类型信息写全:
mCacheTask = new CacheTask();
AsyncTask<String, Void, ListEntity<T>> mCacheTask = new CacheTask();
这样就不会出现异常。
private AsyncTask mCacheTask = new CacheTask();
结果出现了java.lang.ClassCastException: java.lang.Object[] cannot be cast to java.lang.Void[] 异常信息。
针对这种情况有两种解决方法:
1、不使用多态的方法 即让 编译类型等于运行时类型。
CacheTask mCacheTask = new CacheTask();
2、继续使用多态,不过这时候就需要将声明的类型信息写全:
mCacheTask = new CacheTask();
AsyncTask<String, Void, ListEntity<T>> mCacheTask = new CacheTask();
这样就不会出现异常。
相关文章推荐
- Xcode7编译遇到building for iOS simulator, but linking in object file built for OSX, for architectu问题解决方案
- Objective-C Foundation框架实践——NSNumber(一)
- An entity object cannot be referenced by multiple instances of IEntityChangeTracker.
- Object类型数据转换成Long类型数据
- 简单图书管理实现
- 常见的Objective-C笔试题
- Android原生json类org.json.JSONObject初步使用
- Objective-C 协议(protocol)
- iOS开发笔记--Objective-C实现多继承
- Objective-C 程序设计 第四章
- [转]查看处于被锁状态的表:v$locked_object dba_objects v$session all_objects v$sqlarea v$lock
- Objective-C categories in static library链接库真实链接的大小
- Objective-C学习笔记3
- Objective-C学习笔记2
- Objective-C学习笔记1
- hibernate执行的SQL语句返回的list集合用Object[]接收遍历
- 【Objective-C】空指针和野指针
- android intent传递HashMap<String, Object>
- Objective-C 的Foundation库总结
- NSString, NSMutableString, NSNumber----OC第四天