java中new 某一类型对象返回null

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中new 某一类型对象返回null相关的知识,希望对你有一定的参考价值。

在构造方法中让满足条件是返回该类型对象,否则返回null
不要说不可以实现。我知道是可以实现的。
有高手吗?
果然有高手啊,谢谢大家啊。
不过一个问题,肯定有它的意义。
相信回答出来的人都知道它有什么用途!
谢谢!

返回null是正常的。
解释:new一个对象,只不过是初始化,并没有个其进行实例化和赋值,所以当前这个对象就是null。
备注:任何对象本身只有实例化后才是有意义的。
参考技术A 创建空对象是没有任何意义的,劝楼主别在这上面费心思了,Java本身就有一个Object类,这个类本身包含所有的类和对象,相当于一个空类,所有的类都隐式的继承自它,它的对象可以用任何类的对象实例化,相当于空的对象
想得到空对象再简单不过,何必大费周章
参考技术B 在构造时抛异常是解决方法
public class NewNULLObject

public NewNULLObject(boolean canNew) throws Exception
if(canNew)
throw new Exception() ;


/**
* @param args
*/
public static void main(String[] args)
// TODO Auto-generated method stub
NewNULLObject ne=null;
try
ne = new NewNULLObject(true);
System.out.println(ne);
catch (Exception e)
// TODO Auto-generated catch block
e.printStackTrace();

System.out.println(ne);


参考技术C 在构造时抛异常是解决方法
public class NewNULLObject

public NewNULLObject(boolean canNew) throws Exception
if(canNew)
throw new Exception() ;


/**
* @param args
*/
public static void main(String[] args)
// TODO Auto-generated method stub
NewNULLObject ne=null;
try
ne = new NewNULLObject(true);
System.out.println(ne);
catch (Exception e)
// TODO Auto-generated catch block
e.printStackTrace();

System.out.println(ne);


本回答被提问者采纳
参考技术D 构造方法是没有返回值的吧。
你说的是不是这个:Object o = new Object(); o=null;

Java基础之数组

数组变量属引用类型,数组可以看成是对象,数组中的每个元素相当于该对象的成员变量。

数组中的元素可以是任何数据类型,包括基本类型和引用类型。

Java语言中声明数组时不能指定其长度(数组中元素的个数),声明数组时,仅创建一个引用变量,该变量存在栈中,并没有在堆中分配内存,此时引用变量的值为null。

数组对象的创建,new 数组元素的类型[数组元素的个数],创建数组对象时,才在堆中分配内存,因此也可以指定数组元素的个数,同时将对象的堆内存地址赋值给数组引用变量。创建时,没有初始化数组元素,此时为默认值,比如int型数组,默认值为0.

元素为引用数据类型的数组,数组中的每一个元素都需要实例化。

技术分享

二维数组可以看成以数组为元素的数组,Java中多维数组的声明和初始化应按从高维到低维的顺序进行。二维数组中数组名表示高维的引用变量,数组名[高维下标]表示低维的引用变量,数组名.length表示高维的元素个数,数组名[高维下标].length表示低维的元素个数。

数组的拷贝:

使用java.lang.System类的静态方法:public static void arraycopy(object src,int srcPos,Object dest,int destPos,int length),src原数组,拷贝从元素组的srcPos位置开始,拷贝length个元素到目标数组dest,复制从目标数组的destPos位置开始。


本文出自 “一步,一步” 博客,请务必保留此出处http://summerflowers.blog.51cto.com/5202033/1920489

以上是关于java中new 某一类型对象返回null的主要内容,如果未能解决你的问题,请参考以下文章

c++ new 对象问题

new/malloc

实现new操作符

Jquery 的构造函数

new和malloc的区别

小程序 new Date(2019-03-01 00:00:00) 返回对象null