作为使用java不久的菜鸟,我经常犯一些低级错误。现在把上次所犯的错误记录如下:
Class Car
{
static String Name;
static String Type;
public void setCarName( String CarName )
{
this.Name = CarName ;
}
public void setCarType( String CarType )
{
this.Type = CarType ;
}
}
public class ClassTest{
public static void main( String[] args )
{
Car[] myCar = new Car[ 10 ];
for ( int i = 0; i < 10; i++ )
{
myCar[i].setCarName( "bmw" );
myCar[i].setCarType( " 1000 ");
}
}
}
结果在执行myCar.setCarName( "bmw" );的时候出现了异常,问题出在数组只是做了定义,没有初始化。就像c++一样仅仅定义了指针,没有给指针开辟空间。因此值不能赋给成员变量。只要在改成如下:
for ( int i = 0; i < 10; i++ )
{
myCar[i] = new Car();//进行初始化
myCar[i].setCarName( "bmw" );
myCar[i].setCarType( " 1000 ");
}