
프로그래밍 언어는 사람의 말에 얼마나 가까운지에 따라, 고급언어 > 어셈블리어 > 기계어로 구분 된다.
Java는 이 중 고급 언어에 속하며 플랫픔 독립성 특성을 갖는다.
윈도우 - exe / 맥 - app / 리눅스 - sh 처럼 각 운영체제에서만 실행가능한 성격을 플랫폼에 종속적이라고 합니다.
Java는 동일한 class파일로 윈도우/맥/리눅스 등 어떤 환경에서도 실행 가능하다는 특성을 갖으며 이를 플랫폼에 대해 독립성 갖는다고 합니다.
Java의 이러한 특성은 JVM으로 인해 자바로 작성된 코드를 어떤 환경에서도 JVM이 각 플랫폼에 맞는 형태로 해석해주기 떄문입니다.
JVM : Java Virtual Machine, 말 그대로 Java로 작성된 코드를 컴퓨터가 이해할 수 있는 기계어로 변환해주는 도구 이다.JRE : Java Runtime Enviornment, Java로 작성된 프로그램이 실행가능한 환경을 말합니다.JDK : Java Development Kit으로 자바를 이용해 프로그램을 개발하는데 필요한 도구를 모아둔 집단을 의미합니다.위 3가지의 개념은 JDK ⊃ JRE ⊃ JVM 의 포함관계를 갖습니다.
따라서 우리는 모두 포함하고 있는 JDK만 다운로드 받으면 됩니다!
.java 소스파일 생성.class 바이트 코드 파일 생성 (.java 파일 저장 시 자동으로 컴파일)JVM이 메모리 할당main() 메서드 실행package 패키지;
public class 클래스명 {
public static void main(String[] args) {
내용~~;
}
}
package 패기지;
주석을 제외하고 패키지 선언부가 가장 먼저 와야합니다.
다만, 디폴트 패키지를 사용할 경우 패키지 선언은 생략됩니다.
패키지 내 디렉토리 구분은 .(점)으로 구분합니다.
💡 패키지를 사용하는 이유
- 디렉토리 구조를 표현하고 해당 파일의 위치를 표시해주는 역할
- 소스파일 이름이 같은 파일이 있더라도, 패키지로 분리되어있으면 충돌하지 않습니다.
public class 클래스명 {
public static void main(String[] args) {
내용~~;
}
}
클래스 선언부에서 public의 경우 접근제한자로 1개의 소스파일에서는 최대 1개의 public을 사용할 수 있습니다.
해당 public을 사요하는 클래스의 경우 클래스명이 소스파일 명과 동일해야합니다.
클래스 내부 구조에는, 필드, 메서드, 생성자, 이너 클래스만 올 수 있습니다.
💡 접근제한자를 생략하면?
위public의 경우 한 파일에 한 클래스에만 사용할 수 있습니다. 접근제한자를 지정안한 클래스의 경우는default라는 접근제한자로 지정됩니다.
$(달러기호), _(언더 스코어)public 클래스명은 반드시 소스코드명과 동일해야합니다.public static void main(String[] args) {
내용~~;
}
main()메서드의 경우 프로그래밍 실행 시 가장 먼저 실행되는 메서드로, Java 프로그래밍 시 무조건 포함해줘야하는 메서드 입니다.
기본적인 콘솔 출력방법 입니다.
System.out.print("한줄에 주르르륵 출력");
System.out.println("한줄에 출력 후 줄넘김");
System.out.printf("형식지정코드", 인자, 인자, 인자);
System.out.print : 기본 출력 방법으로 한줄에 쥬르르륵 입력하는 방법입니다.System.out.println : 기본 출력 방법에서 입력된 내용 출력 후 줄넘김하는 방식 입니다.System.out.printf : Format(포맷)을 지정해서 출력하는 방식 입니다.포맷터 형식은 아래 내용을 기초로 %로 시작하여 여러개의 형식이 올 수 있습니다.
포맷터 형식 안에 \n을 넣어서 줄넘김도 가능하며 JS의 템플릿 문자열 처럼 해당 형식을 이용해 자유자재로 작업할 수 있습니다.
| 형식 | 내용 |
|---|---|
%d | 10진수 표현 형식 |
%o | 8진수 표현 형식 |
%x | 16진수 표현 형식 |
%s | 문자열 |
%f | 소수점 형식 |
%전체차리수.소수점자리수f\n | 전체자리는 소수점을 포함한 자리수 입니다. 들어간 값보다 작은값으로 지정해버리면 시스템이 알아서 전체자리수를 조정해 출력됩니다. |
\n | 줄넘김 |

Do it! 진짜 개발자가 되는 Java 프로그램 입분서 자바 완전 정복 - 김동형
위 책을 공부하며 작성하고 있습니다!