遇到InstantiationException咋办?这几招帮你解决!

吉云

今儿个,咱来聊聊这个叫做“InstantiationException”的玩意儿。 一开始看到这个词儿,我也有点懵,啥玩意儿这是?后来捣鼓半天才弄明白,原来是在创建对象的时候出岔子。

那天我正写着代码,美滋滋地准备new一个对象出来用。结果,啪的一下,报个错,就是这个“InstantiationException”。 我当时就纳闷,我这代码也没啥毛病,咋就创建不出对象来?

于是我就开始各种找原因。先是检查一下我的类名,没错,和文件名对的上。然后又看看访问权限,public的,也没问题。可是问题到底出在哪儿?

遇到InstantiationException咋办?这几招帮你解决!

后来我突然想起来,好像我这个类没有写构造函数。 乖乖,这可是个大问题。 要知道,Java这玩意儿,你如果不写构造函数,它会默认给你加一个无参的。 可要是你自己写一个带参数的,它就不给你加。而我,刚好就写一个带参数的构造函数。

所以问题的根源就找到,我得给我这个类加一个无参的构造函数。 说干就干,我赶紧补上一个:

  • public MyClass() { }

改完之后,我再一运行,果然好,那个对象顺利地被创建出来,也没再报那个“InstantiationException”的错。 这下我心里的大石头总算是落地。

遇到InstantiationException咋办?这几招帮你解决!

通过这回经历,我也算是长个记性。 以后写代码的时候,一定要注意构造函数的问题。 要么就啥也不写,让系统给你默认加一个无参的;要么就自己把无参的和带参的都写全,省得再出这种幺蛾子。

不过话说回来,这回的排错过程也挺有意思的。 就像破案一样,一点一点地排查,最终找到真凶。 这种感觉,还真有点小成就感。 我把这回的经历记录下来,也是希望给以后遇到同样问题的小伙伴们提个醒,少走点弯路。

好,今儿个就分享到这儿。 编程这玩意儿,还是得多实践,多踩坑,才能不断进步!

免责声明:由于无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如我们转载的作品侵犯了您的权利,请您通知我们,请将本侵权页面网址发送邮件到qingge@88.com,深感抱歉,我们会做删除处理。

目录[+]