LinkageError — 클래스가 의존하는 다른 클래스와 비호환일 때
LinkageError — 클래스가 의존하는 다른 클래스와 비호환일 때
LinkageError의 하위 클래스들은, 어떤 클래스가 다른 클래스에 의존하고 있는데 의존 대상 클래스가 전자를 컴파일한 뒤에 호환되지 않게 바뀌었을 때 발생하는 에러를 나타내요.
본문
이 에러는 "링크(link) 시점의 문제"를 표현하는 뿌리 에러예요. 다시 말해 클래스 로딩·검증·준비 단계에서, 클래스 간 관계가 어긋나면 여러 하위 에러가 이 타입으로 묶여요. 대표적인 하위 클래스로 ClassCircularityError, ClassFormatError, ExceptionInInitializerError, IncompatibleClassChangeError, NoClassDefFoundError, VerifyError 등이 있어요.
상속 구조는 다음과 같아요.
java.lang.Object
java.lang.Throwable
java.lang.Error
java.lang.LinkageError
Error의 하위 클래스라서 보통 프로그램이 직접 복구하길 기대하지 않는 치명적 계열이에요.
생성자
LinkageError()— 상세 메시지 없이 생성해요.LinkageError(String s)— 지정된 상세 메시지로 생성해요.LinkageError(String s, Throwable cause)— 상세 메시지와 원인을 함께 지정해요 (1.7부터).