Java 비정상 처리에서의 단언 사용 분석
단언은 증명과 테스트 프로그램의 가설에 사용된다. 예를 들어 "여기 값이 5보다 크다".
단언은 실행할 때 코드에서 완전히 삭제할 수 있기 때문에 코드의 운행 속도에 영향을 주지 않는다.
단언적 사용
단언에는 두 가지 방법이 있다.
하나는 assert<부울 표현식>;
다른 하나는 assert<부울 표현식>:<디테일 설명>입니다.
부울 표현식의 값이false이면 AssertionError 이상이 발생합니다.자세한 설명은 AssertionError 예외 설명 텍스트로 javac Csource 1.4 MyClass를 사용합니다.java의 컴파일 방식은 다음과 같습니다.
public class AssertExample {
public static void main(String[] args) {
int x = 10;
if (args.length > 0) {
try {
x = Integer.parseInt(args[0]);
} catch (NumberFormatException nfe) {
/* Ignore */
}
}
System.out.println("Testing assertion that x == 10");
assert x == 10 : "Our assertion failed";
System.out.println("Test passed");
}
}
새로운 키워드를 도입했기 때문에 컴파일할 때 추가 파라미터를 추가해야 합니다. 컴파일이 성공하려면 JDK1.4의javac를 사용하고 파라미터'-source1.4'를 추가해야 합니다. 예를 들어 아래의 명령을 사용하여 위의 코드를 컴파일할 수 있습니다.
javac -source 1.4 AssertExample.java
위의 프로그램이 실행될 때 단언 기능을 사용하려면 추가 매개 변수를 사용해야 합니다. 예를 들어 다음과 같습니다.
java -ea AssertExample 1
프로그램의 출력은 다음과 같습니다.
Testing assertion that x == 10
Exception in thread "main" java.lang.AssertionError:Our assertion failed
at AssertExample.main(AssertExample.java:20)
입력한 파라미터가 10과 같지 않기 때문에 단언 기능은 프로그램이 실행할 때 단언 오류를 내보냅니다. 주의는 오류입니다. 이것은 프로그램에 심각한 오류가 발생하고 강제로 종료된다는 것을 의미합니다.단언은 boolean 값을 사용합니다. 만약true가 아니라면 AssertionError를 던져 프로그램의 실행을 종료합니다.단언 추천 사용 방법
검증 방법에 사용되는 내부 논리:
실행 시 단언 차단
실행 시 단언을 차단하려면 다음과 같이 하십시오.
java Cdisableassertions 또는 java Cda 클래스 이름
실행 시 단언을 허용하려면 다음과 같이 하십시오.
java Cenableassertions 또는 java Cea 클래스 이름
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
JPA + QueryDSL 계층형 댓글, 대댓글 구현(2)이번엔 전편에 이어서 계층형 댓글, 대댓글을 다시 리팩토링해볼 예정이다. 이전 게시글에서는 계층형 댓글, 대댓글을 구현은 되었지만 N+1 문제가 있었다. 이번에는 그 N+1 문제를 해결해 볼 것이다. 위의 로직은 이...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.