当前位置:编程学习 > JAVA >>

求为什么执行不下去

public class MemonicaList {
Element element[] = new Element[53] ;


public void initMemonicaList(){
String cardList[] = {" ","C4","H2","D7","C3","H4","D6","SA","H5","S9","S2",
 "HQ","D3","CQ","H8","S6","S5","H9","CK","D2","HJ",
 "S3","S8","H6","C10","D5","DK","C2","H3","D8","C5",
 "SK","DJ","C8","S10","HK","CJ","S7","H10","DA","S4",
 "H7","D4","CA","C9","SJ","DQ","C7","SQ","D10","C6",
 "HA","D9"};
for( int i = 0 ; i <= 52 ; i++ )
{
element[i].initElement( i , cardList[i] );//这里无法执行
}

}
}

public class Element {
int number;
String card;
boolean tag ;
Element()
{
this.number = 0;
this.card = "  ";
this.tag = false;
}
public void initElement(int initnumber, String initCard)
{
number = initnumber;
card = initCard;
tag = false;
}
public void answerCorrect(){
this.tag = true;
}

} class --------------------编程问答-------------------- 在它前面加一句
 element[i] = new Element();
你的element没初始化 --------------------编程问答-------------------- 谢谢,
多问一下,new Element[53]  为什么没有调用构造方法 Element()
如何在定义Element数组时就将他初始化呀 --------------------编程问答--------------------
引用 2 楼 InvisibleMike 的回复:
谢谢,
多问一下,new Element[53]  为什么没有调用构造方法 Element()
如何在定义Element数组时就将他初始化呀


定义一个数组参数的构造函数 --------------------编程问答-------------------- 非常感谢对菜鸟无私的帮助 --------------------编程问答-------------------- Element element[] = new Element[53] ;
这句话执行后生成了53个东西 不是53个new Element()而是53个Element element
是53个栈内存中的引用 不是堆内存中的53个对象 如果真会调构造方法的话 如果你定义有参构造却没显示定义无参构造 那Element element[] = new Element[53] 怎么传参数给构造? --------------------编程问答--------------------
引用 2 楼 InvisibleMike 的回复:
谢谢,
多问一下,new Element[53]  为什么没有调用构造方法 Element()很明显这个方法没有参数
 
如何在定义Element数组时就将他初始化呀
  这个就是方法的重载 如果你想new Element(53) 的时候 调用Element() 方法 就要 设置这个方法的参数 ,一般的我们在new Object() 的时候 如果你没指定参数 那么一般都是调的那个带空的参数的方法    --------------------编程问答-------------------- 接分,,呵呵,!!!!!!
补充:Java ,  Java SE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,