자바의 동작원리
- 클래스 로더 (Class Loader)
- 계층구조
- 위임모델
- 가시성 제한
- 언로드(Unload) 불가
- 이름공간(Name Space)
- 런타임 데이터 영역 (Runtime Data Area)
- 실행 엔진 (Execution Engine)
- 런타임 데이터 영역 : JVM이 OS위에서 실행되면서 할당받는 메모리 영역
- 실행 엔진 (Execution Engine) : 클래스 로더를 통해 런타임 데이터 영역에 배치된 바이트 코드를 명령어 단위로 읽어서 실행시켜줌.
자바의 특징
- 플랫폼이 독립적 (운영체제와 상관없이 실행 가능)
- 객체지향언어
- 함수형코딩 지원
- 분산처리 지원
- 멀티쓰레드 지원
JVM : Java Virtual Machine
JDK : Java Development Kit (자바개발도구)
JRE : Java Runtine Environment (자바 실행환경)
- JDK는 사용가능한 블록을 모아놓은 개념.
- Java 실행파일은 완성된 블록 개념.
- JRE는 완성된 블록을 세워(실행) 놓을 수 있는 널찍한 판
기본 구조 및 문법
소스파일은 src 폴더 내에 존재함 (.java)
바이트코드는 bin 폴더 내에 존재함(.class)
- 주석
- /* 주석내용 */ : 여러줄을 주석 처리
- // 주석내용 : 한 줄만 주석 처리
- 클래스 ( public class Test { ... } )
- public : 접근지정자 키워드 (파일당 최대 1개까지)
- class : 클래스의 이름 앞에 오는 예약어
- 클래스 이름은 자유롭게 선정 가능 but 소스 파일 이름과 동일 해야 함
- 매서드 ( public static void main(String[] args) { ... } )