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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mac idea 2021 激活【中文破解版】

    (mac idea 2021 激活)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~4M7H…

    2022年3月29日
    49
  • Idea激活码永久有效Idea2021.3.2激活码教程-持续更新,一步到位

    Idea激活码永久有效Idea2021.3.2激活码教程-持续更新,一步到位Idea激活码永久有效2021.3.2激活码教程-Windows版永久激活-持续更新,Idea激活码2021.3.2成功激活

    2022年6月17日
    104
  • 深入浅出JVM调优,看完你就懂

    深入浅出JVM调优,看完你就懂深入浅出JVM调优基本概念:JVM把内存区分为堆区(heap)、栈区(stack)和方法区(method)。由于本文主要讲解JVM调优,因此我们可以简单的理解为,JVM中的堆区中存放的是实际的对象,是需要被GC的。其他的都无需GC。下图文JVM的内存模型从图中我们可以看到,1、JVM实质上分为三大块,年轻代(YoungGen),年老代(OldMemory…

    2022年6月1日
    35
  • 常见的杀毒软件_杀毒软件什么最好

    常见的杀毒软件_杀毒软件什么最好如果没有360,杀毒软件哪家强?

    2022年8月20日
    7
  • 地理加权回归简易总结

    地理加权回归简易总结地理加权回归空间统计有别于经典统计学的两大特征:空间相关性和空间异质性,莫兰指数等可以用来量化空间相关性,那么地理加权回归,就可以用来量化空间异质性。1.地理加权回归的出现:1)因为地理位置的变化,而引起的变量间关系或结构的变化称之为空间非平稳性(spatialnonstationarity)。——虾神在空间上出现的非平稳性,通常被认为由以下三个方面的原因引起的:随机抽样的误差引起…

    2022年10月7日
    3
  • #include<vector>

    #include<vector>

    2021年9月27日
    73

发表回复

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

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