2014-04-11 2 views
0

런타임과 컴파일 타임의 차이점에 대해 자세히 알고 싶습니다. 그리고 런타임 오류와 컴파일 타임 오류는 무엇입니까? 그들 사이의 차이점은 무엇입니까?런타임과 컴파일시 컴파일

+4

이름은 당신에게 단서를주지 않습니까? –

+4

자신 만의 조사를 수행하고 특정 질문으로 되돌아옵니다. https://www.google.com/search?num=20&safe=off&site=&source=hp&q=runtime+vs+compile+time – clcto

답변

3

컴파일 타임 예외 또는 오류는 컴파일러에서 분명한 프로그램을 만드는 명백한 실수입니다. 염분이있는 IDE는 자동으로 이러한 오류를 표시하며 빌드하려고 시도하지 않습니다.

런타임 예외는 코드에 잘못된 코드가있는 것은 아니지만 프로그램이 실행될 때 사물이 합쳐지지 않는 상태가되거나 잘못된 연산이 시도되거나 어떤 변수가 null 일 때 그것을 사용하십시오. IDE는 이러한 실수에 의존 할 수도 있고 안할 수도 있으며 추적하기가 훨씬 까다로운 유형입니다. 여기서 디버거 사용에 익숙해지는 것이 중요합니다. 요약

:
컴파일 시간 : 이미 내장 된 코드를 사용하는 경우 : 만들려고 할 때/당신의 코드를
실행 시간을 컴파일합니다.

0

런타임 오류는 컴파일 후 발생하는 오류 유형입니다. 배열을 반복하는 루프가 있다고 가정 해 보겠습니다. 그러나 당신의 논리가 조금 벗어나 실수로 경계 밖으로 나가면 (IndexOutOfBoundsException), 컴파일러는 이런 식으로 프로그래머 나 사용자가 일으키는 논리적 오류를 찾지 않기 때문에 일어날 것임을 알지 못합니다. null 참조에 의한 NullPointerExceptions은 다른 런타임 오류입니다. 컴파일 타임 오류는 구문 오류 일 수 있습니다. 누락 된 세미콜론.

당신이 확인하고 체크되지 않은 예외에 대해 알고 싶은 경우에 당신은이 기사를 읽어야

, http://www.javapractices.com/topic/TopicAction.do?Id=129 그것은 당신이 예외 유형의 차이점을 이해하는 데 도움이 될 수 있습니다 확인하고 체크되지 않은 예외의 차이에 대한 설명이있다

및 그들의 원인.

코드 호출에 관해서는 대부분 컴파일 타임에 완료됩니다. 개체를 인스턴스화하거나 메서드를 호출 할 때. 이것은 모두 명령으로 컴파일되고 컴파일시 준비됩니다. 그러나 런타임 중에 무언가를 호출하려는 경우 리플렉션 (reflection)을 사용하여 객체를 인스턴스화하거나 런타임에 메소드를 호출 할 수 있습니다.

http://www.programcreek.com/2013/09/java-reflection-tutorial/이 기사는 리플렉션에 유용 할 수 있습니다.