java——异常

java——异常

Java 异常处理

异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的。

比如说,你的代码少了一个分号,那么运行出来结果是提示是错误 java.lang.Error;如果你用System.out.println(11/0),那么你是因为你用0做了除数,会抛出 java.lang.ArithmeticException 的异常。

异常发生的原因有很多,通常包含以下几大类:

  • 用户输入了非法数据。
  • 要打开的文件不存在。
  • 网络通信时连接中断,或者JVM内存溢出。

这些异常有的是因为用户错误引起,有的是程序错误引起的,还有其它一些是因为物理错误引起的。-

要理解Java异常处理是如何工作的,你需要掌握以下三种类型的异常:

  • 检查性异常:最具代表的检查性异常是用户错误或问题引起的异常,这是程序员无法预见的。例如要打开一个不存在文件时,一个异常就发生了,这些异常在编译时不能被简单地忽略。
  • 运行时异常: 运行时异常是可能被程序员避免的异常。与检查性异常相反,运行时异常可以在编译时被忽略。
  • 错误: 错误不是异常,而是脱离程序员控制的问题。错误在代码中通常被忽略。例如,当栈溢出时,一个错误就发生了,它们在编译也检查不到的。
package Demo4;

import org.junit.Test;

import Demo4.Demo1.Pen;

public class Demo2 {
	@Test
	public  void test1(){
		Person p = new Person("彭礼勇");
		Pen pen= new Pen();
		p.use(pen);
	}
	@Test
	public void test2(){
		Person p =new Person("张三");
		Pen pen =new Pen();
		p.use(pen);
	}
	
	public class Person{
		//Alt + Shift + S
		private String name;
		//快捷建 c 
		public Person() {
			super();
			// TODO Auto-generated constructor stub
		}
		//快捷键 o
		public Person(String name) {
			super();
			this.name = name;
		}
	//有一个get 和 set的
		public String getName() {
			return name;
		}
		public void setName(String name) {
			this.name = name;
		}
		public void use(Pen p){
			try {
				p.test();
			}catch (Exception e){
				System.out.println(e);
			}
		}
	}
	public class Pen{
		public void test(){
			System.out.println("检查插销是否有电");
			throw new RuntimeException("哇。。我被电到了");
		}

		public void use(Pen p) {
			// TODO Auto-generated method stub
			
		}
		
	}
}

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114811.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号