因为要用android开发一个网站的WCF程序,所以今晚花了6个小时来调试一个小类..

开始的时候以为是刚接触android,就觉得问题是发生在android的配置或有关的问题上..

但是后来才发现,问题原来只是发生在一条java语句:

类变量在声明初始化的时候不能调用其他方法!

错误代码如果:

public class SelectedActivity extends Activity {    private Button btnMycourse;    private Button btnCourseId;    private Button btnCourseDetail;    private Button btnMyJob;    private Button btnJobId;    private Button btnJobDetail;    private Button btnClassNumber;                                                                                                                                                                                                                                                                                                                                                                                  private Intent it = super.getIntent();    private String session = it.getStringExtra("session");    private String userName =  it.getStringExtra("userName");                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                @Override    protected void onCreate(Bundle savedInstanceState) {        ...


然后修改了10、11和12行的代码程序就正常运行了:

public class SelectedActivity extends Activity {    private Button btnMycourse;    private Button btnCourseId;    private Button btnCourseDetail;    private Button btnMyJob;    private Button btnJobId;    private Button btnJobDetail;    private Button btnClassNumber;                                                                                                                                                                                                                                                                                                                                                private Intent it;    private String sessionID ;    private String userName;                                                                                                                                                                                                                                                                                                                                                @Override    protected void onCreate(Bundle savedInstanceState) {        it = super.getIntent();        sessionID = it.getStringExtra("sessionID");        userName =  it.getStringExtra("userName");


对于一个用了一年多java的人来说,这是一个低级中的低级错误!

所以为了给自己一个小小惩罚,罚自己做了100俯卧撑(虽然平时锻炼也有做,

不过那都是做完一组就休息好再做另一组的,今晚是做完一组休息几秒就立刻做)

至于为什么要写这篇博客,原因就是让自己好好记住这个教训,避免以后不犯这种错误..

也好让大家鄙视一番..能让自己有一个好的总结。


小小总结如下:

1):发生错误时,要找准错误的定位,而不是凭着自己的感觉,例如这次的错误提示:



因为ADT日志不能复制(可能是我不会复制),所以截图,可能截图看不清..

我当时看到了第一句:“java.lang.RuntimeException: Unable to Start activity ComponentInfo{...” 以为就是关于activity注册问题或者配置错了,就一直往这个方向

调试..

却忽略了下面的一句:“Cause by :java.lang.NullPointerExection at com.example.scaucs.net.SelectedActivity.<init>SelectedActivity.java

其实这一句才是问题根源所在!


2)不要一味地追求代码简化,其实开始的时候程序是正常的,后来我想简化代码就直接在

声明的地方用其他方法赋值了,6个小时就这样浪费了。


更多相关文章

  1. android 程序的签名
  2. android开发教程(十一)——android应用程序基础
  3. Android(安卓)productFlavors 差异化打包
  4. “adb不是内部或外部命令,也不是可运行的程序或批量文件“
  5. android 完全退出自己的应用程序
  6. 解决OPPO手机adb调试找不到设备(Win8系统)
  7. android 系统权限大全
  8. 为什么我们可以在非UI线程中更新UI
  9. 基于web的android图像处理示例(Win7+Apache+PHP+Matlab+Android)

随机推荐

  1. compiler插件,定义编译打包的jdk版本
  2. WePY-小程序框架设计
  3. 练习
  4. ORA-00069: cannot acquire lock
  5. 排序算法——插入排序
  6. Python语言怎么样?为什么学Python?
  7. J. Cole 的 InnoDB 系列 - 1. 学习 InnoD
  8. maven 插件用于打不同环境的版本包
  9. JavaScript中的数据类型转换
  10. 0基础学习Python该如何入门?Python学习方