在创建对象数组后,调用写的方法会报Exception in thread “main” java.lang.NullPointerException这样的错。
先看看我的错误代码和正确代码的区别吧:
private Customer[] customers; //存放多个客户的数组
private int numerOfCustomers;
public Bank(){
}
public void addCustomer(String f,String l){
Customer cust = new Customer();
customers[numerOfCustomers++]=cust;
}
上面是报错代码,改法有两种:
①在定义数组时直接显示初始化:
private Customer[] customers = new Customer[10]; //存放多个客户的数组
private int numerOfCustomers;
public Bank(){
}
public void addCustomer(String f,String l){
Customer cust = new Customer();
customers[numerOfCustomers++]=cust;
}
②在空参构造器中初始化:
private Customer[] customers; //存放多个客户的数组
private int numerOfCustomers;
public Bank(){
customers = new Customer[10];
}
public void addCustomer(String f,String l){
Customer cust = new Customer();
customers[numerOfCustomers++]=cust;
}
再分享一种错误的初始化方法**
*在方法中初始化数组,这样就是每调用一次方法,就重新创建一个新的数组存储数据,显然是不对的。
在这个暑假开始学习Java啦,平时遇到的我认为值得记录的问题就会写在博客里,再遇到的话方便查找,也作为督促我学习的动力吧