zoukankan      html  css  js  c++  java
  • e.getMessage 为空NULL

    在日常代码中免不了要try catch

    切忌用try catch 去try 整个方法。

    在对象操作之前尽量写上if 空判断。

    反例:

    public void send(){

      try{

        代码1:获取对象

        代码2:操作代码1

        代码3:操作代码2

        代码4:操作代码3

      } catch(Exception e){

        log.error("异常信息:,{}",e.getMessage());

       // 这里会打一个null 误以为没有抓到错误信息。其实是你某一条代码中出现了空对象 。进行了对象操作。

      //如果在代码 2,3,4任何一个地方出现一个空对象并不进行空处理。就会出来这样的情况

      }

    }

    正例:

    public Object send(){

        代码1:获取对象

        if(代码1 == null ){

          代码1 = new 代码1();

        }

        代码2:操作代码1

        代码3:操作代码2

        try{

        代码4:操作代码3

        retrun 代码4;

      } catch(Exception e){

        log.error("代码4异常:,{}",e.getMessage());

      }

      return null;

    }

    在try catch 的时候 。尽量的缩小范围。好定位问题。对象一定要做空判断 。

    不要一上来就全部try .

    这种排错。直接把try catch 去掉。直接让错误抛控制台。就知道是哪一行了。

    再改成代码 再补上try catch 加上日志记录就行了。 

  • 相关阅读:
    开通博客开心
    Kubernetes/K8s架构师实战集训营【中、高级班】-2020
    Kubernetes/K8s CKA认证全套实训视频教程下载
    centos7安装部署docker
    模拟器genymotion的安装与配置
    工欲善其事必先利其器---Android开发环境搭建
    监控利器---Zabbix(一)
    进击python第4篇:初探模块
    fuser命令小结
    进击python第三篇:基础
  • 原文地址:https://www.cnblogs.com/1-Admin/p/9696917.html
Copyright © 2011-2022 走看看