空指针异常是JAVA中最常见的异常之一了,这里我们来简单找一下一般空指针异常引起的原因,与常见的解决办法。

日志或控制台中的体现

当有使用日志工具或在控制台有异常监控时,出现空指针异常,会有如下报错:

java.lang.NullPointerException

空指针异常可能造成程序运行的阻断。

根本原因:指向了不存在的资源

空指针异常出现的根本原因 ,是程序运行到某一个位置时,引用、请求了不存在的资源,包括不限于常量、变量、属性、原型、方法等。

常见引起空指针异常的情况

1. 根据条件查询到的结果(集)为null;

在进行一些查询时,可能由于条件限制、数据问题等等原因,查到的结果集为空,例如:

select name from table1 where 1=2

此种情况下,对单个结果对象的请求其get、set方法或对其进行资源性操作,将会抛出空指针异常。

2. 创建了对象而没有进行初始化;

有时候我们创建对象,可能会直接创建为null,如:

Map<String,String> map = null;

此时,如果我们对其进行get、set等操作,便会抛出空指针异常。

3.指向了错误的资源

JAVA常见异常之NullPointerException 空指针异常相关推荐

  1. 初学Java常见异常:NPE空指针异常怎么解决?

    1. 前言 最近有好几个初学java的小伙伴,甚至是学习到JavaWeb.框架阶段的小伙伴,跑来问健哥,该如何解决Java中的NullPointerException空指针异常. 因为NPE是初学者常 ...

  2. Java常见异常类型及原因分析

    Java常见异常类型及原因分析 0x1 NullPointerException异常 顾名思义,NullPointerException 是空指针异常.但是在 Java 中没有指针,怎么会有 空指针异 ...

  3. Java常见异常种类及产生原因

    Java常见异常种类及产生原因 JAVA异常共分为下列几种 Error JAVA环境编译错误 Runtime Exception 运行处异常 Exception 标准Java库方法异常 throw 用 ...

  4. JAVA常见异常信息(保存)

    一. java基础编程中常见的错误(基本类型) 包装类型参与运算时,要做null值校验,否则可能出现空指针异常. 包装类型比较大小,不能使用compare(i,j)直接比较,因为该方法是用来比较基本类 ...

  5. Java 常见异常种类

    Java 常见异常种类 参考文章: (1)Java 常见异常种类 (2)https://www.cnblogs.com/cvst/p/5822373.html 备忘一下.

  6. java基础之----java常见异常及代码示例

    java基础之----java常见异常及代码示例 参考文章: (1)java基础之----java常见异常及代码示例 (2)https://www.cnblogs.com/gunduzi/p/1203 ...

  7. java常见异常思维导图_21_异常_第21天(异常、企业面试题,思维导图下载)

    今日内容介绍 1.异常概述和继承体系 2.异常原因以及处理方式 3.运行时期异常 4.方法重写的异常处理 5.Throwable类常见方法 6.自定义异常 01异常的概述 * A: 异常的概述 * a ...

  8. Java常见异常(Runtime Exception )小结

    java.lang.NullPointerException 程序遇上了空指针 UnsupportedOperationException 不支持的操作 IllegalArgumentExceptio ...

  9. java 常见异常汇总_Java常见异常总结

    1. java.lang.NullPointerException(空指针异常) 调用了未经初始化的对象或者是不存在的对象 经常出现在创建图片,调用数组这些操作中,比如图片未经初始化,或者图片创建时的 ...

  10. java常见异常说明汇总

    1. java.lang.nullpointerexception 这个异常大家肯定都经常遇到,异常的解释是"程序遇上了空指针",简单地说就是调用了未经初始化的对象或者是不存在的对 ...

最新文章

  1. Eclipse + Spring boot +mybatis + mysql(后续)
  2. 创业公司产品经理如何画好原型图
  3. USTC English Club Note20211215
  4. php动态写入vue,Vue自定义动态组件使用详解
  5. OpenCV中图像水平拼接函数hconcat的使用
  6. vue 关于solt得用法
  7. mysql如何复制表结构,包括主键,索引等等
  8. 面试官问我如何做产品分析
  9. 报表被老板吐槽又多又丑?因为你没有掌握这些动态报表的技巧
  10. [轉]如何使用 MySQL Administrator 管理/备份/还原 My SQL 数据库
  11. POJ 2096 Collecting Bugs:期望dp
  12. \Process(sqlservr)\% Processor Time 计数器飙高
  13. libvirt API管理hypervisors
  14. pythoncad标注教程,AotuCAD国标字体和标注设置技巧图文教程
  15. 工程力学:绪论与其它
  16. 办公协同:xmind8案例实战班-Array老师-专题视频课程
  17. 给女朋友道歉的java代码_有关于向女朋友道歉的经典句子
  18. JVAV中常见的十大异常
  19. VLC Plugin JS 方法
  20. 软件设计模式——单例模式

热门文章

  1. mysql自增函数_mysql实现自增函数
  2. python实现图书借阅管理系统
  3. java实现房屋出租系统
  4. 房屋出租系统(java)
  5. oracle查看数据库文件大小
  6. 小米平板4/4plus手机屏幕驱动板使用步骤说明
  7. 基于NoSQL的租房(链家)信息数据分析(附代码)
  8. 完整计算器java代码_计算器java代码
  9. stdafx.h简介
  10. Java面向对象的三大特征