项目场景:
Java调用方法中参数为未初始化的参数对象时
问题描述:
类A代码
class A{
int age;
B b;
A(int age){
this.age=age;
}
A(){
}
void testA(B b1){
b.testB1();
}
}
类B代码
class B{
A a=new A();
int age;
void testB1(){
System.out.println(a.age);
}
void testB2(){
}
}
主类代码
class Entrance{
public static void main(String[] args){
B b=new B();
A a=new A();
a.testA(b);
}
}
编译执行结果:
原因分析:
在A类方法testA()中所用的b未被初始化,导致代码执行时出现空指针指向错误
解决方案:
A类testA()方法体修改如下
void testA(B b1){
b=new B();
b.testB1();
}
}