jjx940762369
jjx940762369
采纳率0%
2018-11-09 06:32

JAVA静态代码块初始化静态变量后,使用静态变量报空指针异常。

图片说明
先是定义私有静态变量,然后静态代码块初始化。
图片说明
标红这行报错,空指针异常。
个人疑问,是否是因为B/S结构服务端多线程导致、或是其他原因,求详细解答。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

3条回答

  • qq_33241588 qq_33241588 3年前

    Map中的get()方法是通过get(key)值获取value值,当你调用时要保证传递过来的key(roleName)值在roleNameMap中存在,即必须是
    总经理、副总经理、业务员,否则就是其中没有值自然报空指针。

    点赞 评论 复制链接分享
  • Eveamu Eveamu 3年前

    HashMap的get(Object obj)方法返回值是Object不是int常量,要转化的可以用int强转,如果这是上线的产品,建议使用org.apache.commons.collections.MapUtils中的getInteger方法获取,这个类有会帮你判空

    点赞 评论 复制链接分享
  • weixin_43189196 迷路的蛇 3年前

    添加一个roleName不为空的判断

    点赞 评论 复制链接分享

相关推荐