java为⼀个类创建对象数组对象数组对象_关于JAVA类对象数
组的创建
本⼈近期学习JAVA,从基础看起,在学到类构造函数重载时,使⽤不同的构造函数创建对象,看起来代码⾮常冗杂,就想着使⽤数组的⽅式⼀次性创建多个对象。
本⼈结合字符串String数组创建的办法创建类对象,代码如下:
M[] m = {(),("⼩旺财"),("⼤旺财",0),("王旺财",5,'⼥')};
java接口可以创建对象吗
却发现程序报错:
---------- javac ----------
J630f.java:11: 错误: 需要->
M[] m = {(),("⼩旺财"),("⼤旺财",0),("王旺财",5,'⼥')};
^
为什么会出现错误呢?
我们知道直接创建多个字符串是可以直接使⽤:
String [] s={"gdfs","gsdfh","hh","jyt"};
或者:
String [] s=new String []{"gdfs","gsdfh","hh","jyt"};
⽽这两者在创建类对象时都不能⽤了。
通过查询资料,我发现字符串的存储都是先在常量池中创建字符串对象,然后再在堆内存中创建对象。具体参照⽂章点击打开链接
但创建类对象时并不涉及常量池,⽽是直接使⽤new调⽤构造函数在堆内存中开辟内存空间进⾏存储的,所以每次创建新对象都需要使⽤new,对象数组依然。故,创建数组对象可以使⽤下⾯语句:
M[] m = {new M(),new M("⼩旺财"),new M("⼤旺财",0),new M("王旺财",5,'⼥')}
也可以使⽤:
M[] n = new M [5];
n[0]=new M();
n[1]=new M("⼤旺财");
分别对对象初始化。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。