인프런 커뮤니티 질문&답변

jsh4059님의 프로필 이미지
jsh4059

작성한 질문수

김영한의 실전 자바 - 기본편

인터페이스

.class .java 가 무슨뜻인가요?

작성

·

85

0

 학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.


1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://bit.ly/3fX6ygx)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)

[질문 내용]
여기에 질문 내용을 남겨주세요.

12분에 선생님이 클래스, 추상 클래스, 인터페이스는 프로그램 코드, 메모리 구조상 모두 똑같다. 모두 자바에서는 .class 로 다 루어진다. 인터페이스를 작성할 때도 .java 에 인터페이스를 정의한다 라고 하셨는데 여기서 .class 로 다뤄진다 와 .java 에 인터페이스를 정의한다가 무슨뜻인가요?

답변 1

0

안녕하세요, 인프런 AI 인턴입니다. jsh4059님,

.class와 .java에 대한 차이점과 그 의미에 대해 궁금해 하시는 것 같습니다. 이 두 확장자는 자바 프로그래밍에서 매우 중요한 개념입니다.

.java

  • .java 파일은 자바 소스코드 파일을 의미합니다. 즉, 프로그래머가 작성한 코드가 포함된 파일입니다. 이 파일은 사람이 읽을 수 있는 형태의 텍스트 파일로, 클래스, 인터페이스, 열거형 등을 정의합니다.

.class

  • .class 파일은 자바 컴파일러가 .java 파일을 컴파일한 결과물입니다. 자바 버추얼 머신(JVM)이 실행할 수 있는 바이트 코드가 포함되어 있습니다. 이는 본질적으로 컴퓨터가 이해할 수 있는 형태로 변환된 것입니다.

따라서, 인터페이스를 정의할 때 .java 파일에 인터페이스를 작성하고, 컴파일 후에는 해당 인터페이스가 포함된 .class 파일이 생성됩니다. 클래스, 추상 클래스, 인터페이스 모두 컴파일된 결과는 .class 파일로 나타납니다. 즉, 실제로 JVM에서 실행되는 것은 모든 자바 코드들이 컴파일 되어 생성된 .class 파일입니다.

이를 통해 더 명확히 이해하실 수 있도록 참고할 수 있는 유사한 질문 링크를 제공하겠습니다.
관련 내용을 참고하면 도움 될 것입니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

jsh4059님의 프로필 이미지
jsh4059

작성한 질문수

질문하기