java方法的参数为空,出现的异常 - 爱问答

(爱问答)

java方法的参数为空,出现的异常

list(pu,mohu)如果mohu为null的话,调用这个

public List list(PageUtil pu, String mohu){ }

会出现什么异常?

java中NullPointException引起原因有以下几类:
1。对java对象不熟悉,特别体现在初学者及刚入门身上。如:类的成员还是对象的时候,初学者往往不知道如何初始化成员对象,结果导致对象为初始化就调用。
2。数据是从外部获取,如数据库,取出数据后不检查就直接调用,常发生在用hibernate 等orm 工具取完数据后数据展示部分。
3。java代码编写习惯。编写类方法不对方法参数进行检查就使用。
4。引入外部包,而没有引入外部包依赖包
5。粗心。这是最大的原因,特别是对于有一定编程经验的人来说。
解决方法:
   第一类属于java 基础不牢,建议多做练习,熟悉java 对象生命周期的相关知识。如java 对象内存分配,堆与栈,java 初始化过程等。
在外部读入数据的话,建议在读入数据后就检查其是否为null 。当然有时候也跟需求来定,但使用前必须做好检查工作。
跟编程经验有相当关系。公用的方法,一般使用前检查参数,该抛出异常的抛出异常,该用默认值的用默认值处理。一些私有方法,人们因为觉得只有自己使用,自己控制不传人null 值就可以,懒得去检查空异常。确实我自己也常这样干,但发现自己写的,但自己却总保证不了,不传入空。所以建议使用前检查,但可以不抛出异常,可使用断言,自己用默认值处理掉。
引入外部包出现NullPointerException,随着各种框架的发展而越来越常见。主要是人们盲目引用各种包,而不去详细评估引用包的效果,及不去了解所引入包的依赖包。现在有maven 工具,如果使用它构建工程的话,依赖报错可能就会少点了。
粗心。这个就没办法了,相信没几个人改得了。且因为粗心而出现的bug,自己往往很难找出原因,这时可以借下团队的力量,让同事帮你去找,可能很快就找到了

相关标签:java

下一篇:我就问问这些程序有没有多余的

上一篇:我的世界如果装2个不同的可以移出鼠标延迟的MOD会都有效还是只有一个有效在服务器里装

热门标签:
excel 网盘 破解 word dll
最新更新:
微软重新评估新的Outlook的使用时机 联想推出搭载联发科Helio G80芯片组的Tab M9平板 英特尔创新大赛时间确定! 微软Edge浏览器在稳定渠道中推出Workspaces功能 英伟达RTX4060TiGPU推出MaxSun动漫主题! 谷歌地图为用户提供了街景服务! GameSir 在T4 Kaleid中推出了一款出色的控制器! 微软开始在Windows 11 中测试其画图应用程序的新深色模式! LG电子推出全球首款无线OLED电视 英伟达人工智能芯片崭露头角! Steam Deck可以玩什么游戏-Steam Deck价格限时优惠 雷蛇推出CobraPro鼠标 Kindle电子阅读器可以访问谷歌商店吗 Windows10如何加入组策略 window10图片查看器怎么没有了?