본문 바로가기

KOSA FullStack 교육/java

KOSA fullStack 교육 2일차(Platform, Has a Relation)

 

자바는 2단계를 거쳐서 실행되는 언어이다.

NoteBook.java

저장을 누르면 컴파일되면서 javac.exe 동작

NoteBook.class(실행파일) : 정작 실행되진 않는다. 불완전한 기계어. byte code로 만들어져있다.

-> JVM은 이러한 바이트 코드만을 해석한다.

 

NoteBookTest.java

저장을 누르면 컴파일되면서 javac.exe 동작

java.exe 실행ㄱㄱ

 

즉 우리가 아는 클래스는 단지, 컴파일 대상이다.

정리를 하자면

1) 컴파일 단계 -> class파일이 생성 -> 정작 실행 x

2) 실행 단계 -> main메소드에 있는 테스트가 실행의 대상이 된다.

자바 파일이 실행되는 곳이 Platform이다. (=메모리, 즉 JVM)

class: 맨 앞글자가 대문자이다(불변의법칙)

사용자 정의 클래스와, 이미 정의되어있는 클래스를 구분

이미 정의되어 있는 클래스(String, System.out... )는 라이브러리, api라고 불린다.

JDK안에 어마어마한 양의 라이브러리가 들어있다. 이것을 JRE환경이라고 한다. 

JAR = 프로그램 코드를 압축해놓은 것

WAR = 프로젝트 코드(백, 프론트) 압축해놓은 것 

 

 

 

 

Has a Relation(관계를 가짐)

Programmer 클래스 안에 필드에 NoteBook객체를 가지고, set으로 연동을 해주기