java编译异常,运行异常的区别
来源:互联网 发布:博雅云计算 培训 编辑:程序博客网 时间:2024/05/16 04:19
public class Test {public static void main(String[] args) {// TODO Auto-generated method stubString str = null;System.out.println("abc".equals("abc"));// trueSystem.out.println(str.equals("abc"));// java.lang.NullPointerException}}
1.
编译出错差不多就是语法不对,比如你写String str = 'str';这么写语法不对编译就会出错。
运行出错是指语法没问题但是逻辑有问题,比如一个方法传进一个String类型的变量str,方法体中有类似于str.equals("str");的语句,但是传进的str是个null,那么那一句就相当于null.equals("str");这肯定会抛空指针异常。用手机做例子,编译出错就是手机在生产的时候零件不对,那就肯定不能出厂。运行出错就是手机组装完出厂了,到手了你没用来打电话,直接拿来砸核桃了,那手机肯定报废(NOKIA除外)。
2.
比如说你把 for 写成了 fot 的话就会产生编译错误。编译错误一般是语法错误
而运行错误是指,在运行期间(此时已经没有编译错误了)产生的错误,比如说,计算 5 / 0 什么的。
3.
编译错误一般是指语法错误,比如说没加分号,少写了括号,这都属于编译错误。
运行错误一般是程序通过编译没有发生错误,但是程序执行的时候遇到了某些阻碍,比如说你要读取一个文本,但是该文本不存在,这就属于运行错误,因为你的语法本身没有错误,所以编译正常通过,但是系统找不到你的源文件,所以会出现运行错误。
4.
首先,运行时的错误不是语法错误。运行时错误叫做runtime Exception,是一种逻辑上的错误,主要有数组下标越界,空指针异常,除零异常等。在这里给你一个简单的例子。public class RuntimeException {public static void main(String[] args) { int[] arr = new int[2];for(int i = 0; i < arr.length; i++){arr[i] = i;} for(int i = 0; i < 3; i++){System.out.println("arr["+i+"] = "+arr[i]);}}}这个简单的例子就会出数组下标越界的运行时异常。而语法错误时对应于语言本身的,一般会在编译时就会发现,如果你用工具的话,是可以在书写过程中就可以发现的。5.
String value = null;
int len = value.length();
会抛出NullPointerException
6.
编译时异常一般直接显示红线报错,而运行时异常则需要运行程序,程序报错。
0 0
- java编译异常,运行异常的区别
- java运行是编译异常和运行异常的区别
- java运行时异常和编译时异常的区别
- Java之运行时异常与编译时异常区别
- Java之运行时异常与编译时异常区别
- Java之运行时异常与编译时异常区别
- Java的编译时异常和运行时异常的区别
- 编译时异常和运行时异常的区别
- 编译期异常和运行期异常的区别
- java 运行时异常 RuntimeException 和编译时异常的区别
- java中一般异常和运行时异常的区别
- java中一般异常和运行时异常的区别
- Java运行时异常与普通异常的区别
- Java 运行时异常和一般异常的区别
- 异常结构图、编译期异常和运行期异常的区别
- 异常:编译时异常和运行时异常&throw和throws区别try-catch的应用
- 编译时异常、运行时异常、自定义异常-Java
- java中自定义异常& 编译时异常&运行时异常
- IDF实验室之牛刀小试
- 签到 2016.6.14
- 关于 This tag and its children can be replaced by one <TextView/> and a compound drawable 的问题
- [设计模式]——静态代理
- Ubuntu14.04搭建PXE服务器过程
- java编译异常,运行异常的区别
- ym—— Android 5.0学习之ListView升级版RecyclerView
- LeetCode 227. Basic Calculator II
- Java中hashCode的作用
- 八皇后问题
- 最近一段时间关于深度学习知识的梳理
- 32bit 设备crash的问题
- GC垃圾回收算法
- java中关键字volatile的作用