android和java中常见 Exception

1, 常见的nullpointerexception,在调式程序中最多见是空指针异常了,这个是通常是对象实例化为null, 好比在组件的实例化和class对象实例化的时候, 声明 TextView mTestTV;  没有findViewById,或者 new对象为null。android

2,IllegalArgumentException非法参数,不少方法参数的数据类型不一致或者返回的数据类型不一致的异常。web

3,IndexOutOfBoundsException下标越界,这个通常是出如今数组和集合中,循环数组、集合的时候,须要判断是否为空,若为空会报空指针,上面1中提到的错误。若数组或者集合的个数小于遍历的大小则会下标越界。sql

4,ClassCastException:数据类型转换异常   若是前台应用程序缺少相关的控制,如用户在输入日期的时候只输入月、日信息,而没有年份的信息。此时应用程序在进行数据类型转换的时候,就会出现异常。根据笔者的经验,数据类型转换异常在应用程序开发中使一个出现的比较多的异常,也是一个比较低级的异常。数据库

5,NumberFormatException:字符串转换为数字类型时抛出的异常数组

6,SQLException:操做数据库异常类,android中的sqlite建立数据库字段须要id 字段之间须要逗号隔开。app

7,IllegalStateException非法状态eclipse

8,ClassNotFoundException 指定class找不到,这个在android中也是很常见的,须要在eclipse项目工做空间中的路径和类引用。ide

9,ArithmeticException  这个异常的解释是"数学运算异常",好比程序中出现了除以零这样的运算就会出这样的异常ui

10,IllegalAccessException      这个异常的解释是"没有访问权限",当应用程序要调用一个类,但当前的方法即没有对该类的访问权限便会出现这个异常。对程序中用了Package的状况下要注意这个异常spa

11,StackOverflowError   堆栈溢出错误。当一个应用递归调用的层次太深而致使堆栈溢出时抛出该错误

12,OutOfMemoryError   内存不知时致使的异常,通常android中的listview加载图片,没有及时回收,加载过大图片,数据库没close,线程死循环。

android常见错误

1五、工程名上有红色感叹号

解决方案:右键项目名称BuildPath--->ConfigureBuildPaht...中,而后上面有几个选项卡找到Libraries中出现红色叉号的包为路径错误的包。到classpath中修改相应包的当前路径。而后回到eclipseF5刷新工程。

问题缘由:工程中classpath中指向的包路径错误。

解释:用myeclipse新建web工程,在工程目录下会生成一个.classpath配置文件,里面是你工程里面引用的jar的配置。这个.classpath对你的web工程没有什么影响,实际上是给myeclipse识别的。你说的这种状况是由于.classpath文件里面配置引用了某个jar,可是实际上你的lib里面并无这个jar因此才会有红色的提示。你不用拿.classpath文件和你的jar一个个去找,你如今打开MyEclipse右键单击你的web工程,找到BuildPath-->ConfigureBuildPaht...-->而后上面有几个选项卡找到Libraries。这里看到的就是你工程里面引用的全部的jar,看看是否是在某个jar图标上有个很小的黄色的感叹号?若是有的话就没错了,先选中这个jar,点击右边的Remove-->点击OK等待几秒,如今web工程上面的红色XX是否是没有了,哈哈。解释一下:黄色的感叹号的jar,表示.classpath配置文件引用了jar,可是实际上lib里面没有这个jar

1六、使用Intent时出现另外一个活动未发现的异常(ActivityNotFoundException)

解决方案:在AndroidManifest.xml中再加一个<activity android:name=".Filelist" android:label="@string/app_name" />

1七、Fail to connect to camera service

AndroidManifest.xml中添加<uses-permission android:name="android.permission.CAMERA" />

若是仍是不行

@Override

        public void surfaceDestroyed(SurfaceHolder holder) {

                // TODO Auto-generated method stub

                mCamera.stopPreview();

               mCamera.release();//加上这句,就OK

                mCamera=null;

               

        }

com.android.dex.util.ExceptionWithContext  在打包的时候报错  后来看了一下是这个类里面的内部类加了private  去掉就行了


若是用到了多语言  string-en.xml文件找不到 String文件的的id的时候 就须要忽略一些文件 在文件外部添加 lint.xml

里面的内容是:

<?xml version="1.0" encoding="utf-8"?>
<lint>
    <issue id="CutPasteId" severity="ignore" />
    <issue id="MissingTranslation" severity="ignore"/>
    <issue id="ExtraTranslation" severity="ignore"/>
</lint>
相关文章
相关标签/搜索