java.lang.nullpointerexception은 Java 애플리케이션이 객체 대신 null을 활용하려고 할 때 발생하는 Java 오류입니다.
RuntimeException은 공용 클래스인 NullPointerException에 의해 확장됩니다.
NullPointerException은 null 개체의 인스턴스 메서드를 호출하는 경우와 같이 다양한 상황에서 발생합니다. 이 오류는 개체가 null이고 해당 null 개체의 필드에 액세스하거나 편집하려고 하는 경우에도 발생합니다.
null 배열의 길이를 얻으려고 하면 예외도 발생합니다.
이 기사에서는 Java에서 Null 포인터 예외를 처리하는 방법을 살펴보겠습니다.
java.lang.nullpointerexception이 발생하면?
어떤 객체도 가리키지 않는 자바 변수가 어떤 동작을 위해 접근되면 java.lang.nullpointerexception이 발생한다.
런타임 예외 java.lang.nullpointerexception 런타임에 대한 예외는 java.lang.nullpointerexception입니다. 변수를 정의했지만 사용하려고 할 때까지 개체에 할당하지 않으면 Java nullpointerException이 발생합니다.
당신은 존재하지 않는 엔티티를 언급하고 있습니다. Java에서 null은 특정 값을 나타냅니다. 참조 변수에 값이 할당되지 않았거나 값이 할당되지 않았음을 나타내는 데 가장 일반적으로 사용됩니다.
NullPointerException을 방지하려면 변수를 사용하기 전에 모든 개체가 올바르게 초기화되었는지 확인하십시오.
다음은 가장 빈번한 NullPointerException 시나리오 중 일부입니다.
- null 객체의 속성 얻기
- null 객체를 사용하여 메서드 호출
- null 객체에서 동기화를 사용하여
- 예외 throw 메서드에서 null 던지기
- null 인수는 메서드에 전달됩니다.
- null 객체의 인덱스 요소 액세스(배열에서와 같이)
- Spring과 같은 의존성 주입 프레임워크의 경우 이 설정이 올바르지 않습니다.
java.lang.nullpointer예외의 예
개체를 참조하지 않고 일부 활동을 실행하는 데 사용되는 Java 변수가 생성되면 NullPointerException이 발생합니다.
다음 예에서는 null로 설정된 문자열의 길이를 확인하려고 시도합니다.
java.lang.nullpointerexception 수정
1 수정
java.lang 예외를 발생시키는 Java 변수를 찾으십시오. 소프트웨어에서 NullPointerException이 발생하면 변수가 값이나 개체에 할당되었는지 다시 확인하십시오.
값이 java 변수에 할당되면 java.lang.nullpointerexception이 해제됩니다.
2 수정
java.lang.nullpointer가 다음과 같은 경우 작업을 수행하기 위해 java 변수를 사용하기 전에 삼항 연산자를 사용하여 기본값을 지정합니다.변수에 예외가 발생합니다.
변수 값이 있는 경우 해당 값이 사용됩니다. 그렇지 않으면 java.lang.nullpointerexception을 피하기 위해 기본값이 사용됩니다.
3 수정
어떤 변수가 java.lang.nullpointerexception을 일으키는지 확실하지 않거나 java.lang.nullpointerexception을 던질 가능성이 있는 경우 또는 여러 곳에서 java.lang.nullpointerexception을 던질 위험이 있는 경우 코드에 null 검사를 추가하는 데 시간이 많이 걸립니다.
문제를 처리하려면 catch 블록을 추가하세요.
4 수정
응용 프로그램의 Java 변수에서 java.lang.nullpointerexception이 발생하면 사용하기 전에 null 검사를 수행합니다.
변수가 null인 경우 대체 경로를 선택합니다. java.nullpointerexception이 제거됩니다.
결론
이 기사에서는 Java NullPointerException을 살펴보았습니다.
이것은 우리가 가장 기대하지 않을 때 자주 나타나는 위험한 예외입니다. Null 포인터 예외의 가장 일반적인 원인은 null 개체 또는 null 참조입니다.
우리는 이미 가장 효과적인 솔루션을 보았습니다.
댓글을 남겨주세요.