java new失败?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java new失败?相关的知识,希望对你有一定的参考价值。
为什么java实例化之后对象为null
AsAdapter adapter = new AsAdapter();
之后adapter为null
AsAdapter这个类没有问题
我在另一个类中实例化很正常
既然你的AsAdapter()在另一个类里实例化成功,那么就不是无参构造函数的问题。
那么你的AsAdapter()就应该是一个有参构造函数。
你应该检查是否AsAdapter传值有问题,这个问题不是出现在语法上的,因为语法错误会很明显的报错,那么估计问题是出现在逻辑上,可能的问题有:
1。参数类型没有问题,但是参数内容矛盾。
即你传入的参数符合你AsAdapter类的所有要求,但是在实际运行时函数使用相关参数,运算出来的东西并不是有效的。例如:Context不一致。 参考技术A ------解决方案--------------------
类有默认的构造函数;
另外如果new后面类没有或找不到,直接编译就过不了!
------解决方案--------------------
你可以对构造函数抛出异常就可以了
Java 有垃圾回收机制 不用像C++那样自己管理动态分配的内存
------解决方案--------------------
每new 一个都会占有内存啊,但是在java中可以自己回收啊,你不必担心啊
------解决方案--------------------
同时,这两个月写J2ME的代码,包括看过的JAVA代码,发现见过的所有代码new完从来没有去判断返回是否为空,这个是什么情况呢?是否JAVA有更好的控制机制?
你刚new的对象,本身一般就都是空的...
------解决方案--------------------
“内存不足” 和“抛出异常”没关系。
------解决方案--------------------
new 就是new 出块内存给这个对象,让他往里放东西而已,等这个对象所在的作用范围过去了,也就算它的生命周期结束了,那么
java就会把他销毁..某个对象的作用范围可以是个函数,类,整个程序...所以你设计程序的,就应该注意一下,尽量少使用全局或者静态的变量.
------解决方案--------------------
会报OutOfMemoryError 的错误 就不是异常了
因为这个错误是程序无法处理的
以上是关于java new失败?的主要内容,如果未能解决你的问题,请参考以下文章
java.io.FileNotFoundException:/storage/emulated/0/New file.txt:打开失败:EACCES(权限被拒绝)