Java基础之异常概述

在学习编程的过程中,我觉得不止要获得课本的知识,更多的是通过学习技术知识提高解决问题的能力,这样我们才能走在最前方,更多Java学习,请登陆疯狂java培训官网。

  概述:

  1.异常给初学者的感觉(笔者当时就是这个感觉,不知道其他人是否有共鸣?)

  1.异常是个什么东西?理解不了

  2.很复杂

  3.异常很“简陋”,没什么用

  4.我保证我写的程序正确性和健壮性 就用不到它了

  2.解释:

  1.异常是java用来处理程序错误的一种机制,所谓的错误不是语法错误,而是一些不可预期的运行时

  错误(主要)

  2.只要你会用,其实异常并不复杂(相对泛型啊 线程啊 来说)

  3.恰恰相反,异常是十分强大的,前提是你得会用

  4.记住你是人不是神,你不可能枚举出所有的错误情况,

  即便你有这个能力,真这么做了 你的程序会相当的臃肿(写1000行程序,800行在处理所有可能产生的情况,无论这种情况重要与否)。

  3.异常存在和使用的意义

  1.弥补我们人类思维缜密性的不足,处理那些不可预知的错误,保证程序正常运行。

  2.简化开发,你不用去枚举所有可能出现的情况,只需要做和业务逻辑相关的有用的,其他不重要的(相对业务逻辑来说)让异常帮你搞定。

  4.java中把非正常情况分为异常(Exception)和错误(Error),这两个类都是Throwable的子类

  异常(Exception):我们主要讨论的,程序运行时候产生的错误。

  错误(Error):虚拟机级的错误,一般我们无能力从程序的角度去处理他。

  5.下面我们通过感官来认识一下异常

  [java]

  package com.cxy.exception;

  import java.util.List;

  /** 几种常见异常的演示(异常概述)

  * @author cxy

  */

  public class SomeException

  {

  public static void main(String[] args)

  {

  try

  {

  test(21,0);

  }catch(Exception e)

  {

  e.printStackTrace();

  }

  //访问索引是5的元素,会抛出数组越界的异常 ArrayIndexOutOfBoundsException

  try

  {

  //实际 下面这句没有必要在这里 但是为了结构层次清楚 我将这行放到了这个位置

  String[]array={"A","B","C","D","E"};

  System.out.println(array[5]);

  }catch(Exception e)

  {

  e.printStackTrace();

  }

  try

  {

  //实际 下面这句没有必要在这里 但是为了结构层次清楚 我将这行放到了这个位置

  List l=null; //初学者习惯这样初始化一个List

  l.get(0); //尝试访问一个空的对象,会抛出空指针(引用)异常NullPointerException

  //当然 你会说我不会这么傻去访问一个null的方法,这个例子只是一个简单的缩影,真实程序 可能你调用方法的时候并没有预计到这时候他是null

  }catch(Exception e)

  {

  e.printStackTrace();

  }

  System.out.println("程序正常运行");

  }

  /**

  * 当b是0的时候会抛出算数错误异常 ArithmeticException

  */

  public static void test(int a,int b)

  {

  System.out.println("a/b="+a/b);

  }

  }

  结束语:

  1.上面的程序演示了3个比较常见的异常,让大家从感官上认识一下异常

  2.程序虽然有3个异常,但是大家发现 最后仍然打印了“程序正常运行”,这就是异常价值体现之一(保证程序正常运行)

  3.控制台打印了各种异常的信息,初学者开发的时候要注意这些异常,这也是提高开发效率的方法之一。

  疯狂Java培训专注软件开发培训,提升学员就业能力,重点提升实践动手能力。技术知识沉淀深厚的老师,让你感受Java的魅力,激发你对于编程的热爱,让你在半年的时间内掌握8-10万的代码量,掌握Java核心技术,成为真正的技术高手;通过大量全真企业项目疯狂训练,迅速积累项目经验。让你成为技能型的现代化高端人才,迅速获得高薪就业!时间不等人,赶紧联系我们吧!

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值