내 게시물이 제공 할 수있는 것처럼 저는 Java를 처음 접했습니다.개체를 필드로 사용할 때 Java에서 NullPointerException이 발생했습니다.
다른 클래스 (클래스 B)를 해당 필드 중 하나로 사용하는 클래스 (A 클래스라고 부름)를 만들어야합니다. 클래스 A의 생성자는 클래스 B의 생성자를 호출합니다. 지금까지는 정상적으로 작동합니다. 그러나 A의 메소드 중 하나가 B 클래스의 객체에서 B의 메소드 중 하나를 사용하려고하면 NullPointerException이 발생합니다. 이것은 아마도 너무 혼란 스럽기 때문에 Exception을 생성하는이 간단한 예제를 작성했습니다.
이 클래스 B입니다 :
public class class_B {
private int y;
public class_B(int N) {
int y = N*N;
}
public int class_B_method() {
return y;
}
}
이것은 클래스 A입니다 :
public class class_A {
private class_B obj;
public class_A(int N) {
class_B obj = new class_B(N);
}
public int call_class_B_method() {
return obj.class_B_method();
}
public static void main(String[] args) {
int N =4;
class_A p = new class_A(N);
int a = p.call_class_B_method();
}
}
내가 class_A를 실행하면 내가 INT의 A = P "라인에 예외를 얻을 .call_class_B_method(); ". 'obj'가 생성자 'class_B'에 의해 만들어졌고 'call_class_B_method'메서드에서 사용할 수 있어야하므로 이해가되지 않습니다.
감사합니다.
어떤 IDE를 사용하고 있습니까? 이 문제를 일으키는'class_A (int) '에서 사용되지 않는 지역 변수를 경고해야합니다. – Unihedron