变量赋值在构造方法内和实例方法内的区别
有没有大佬知道将一个变量赋值在实例方法内和构造方法内的区别呢,小弟这有个代码实在找不着头绪
Product[] car;
int b;
int size=0;
public ShoppingCar() {
car=new Product[5];
}
public void add(Product a) {
if(size>=car.length) {
car=Arrays.copyOf(car, car.length*3);
}
car[size]=a;
size++;
(已经定义过Product这个类了)
我把car=new Pdoduct[5]放到add方法内,在Test中调用add方法的时候出现了空指针异常,但我把这个放到构造方法里面就没事了,这是为什么呢?