일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- abstract
- array
- ArrayList
- Class
- collection
- database
- db
- DDL
- default
- DML
- Exception
- Generic
- HashSet
- Interface
- Java
- Java 입문
- java 자료형
- java 클래스
- JavaBean
- javabeans
- JAVA의 특징
- LinkedList
- linkedset
- list
- mariadb
- Private
- protected
- public
- RuntimeException
- set
- Today
- Total
GeehDev
[Java] Java의 기본 개요 본문
Java의 특징
프로그래밍 언어는 사람의 말에 얼마나 가까운지에 따라, 고급언어 > 어셈블리어 > 기계어로 구분 된다.
- 고급언어 : 인간이 이해할 수 있는 구조로 컴퓨터가 수행해야할 작업을 정의한 언어
ex ) C, C++, Java 등 - 어셈블리어 : 고급언어와 기계어 사이의 언어로 기계어와 1:1로 대응되는 언어
- 기계어 : 0, 1로 이루어진 2진데이터로 구성 된 컴퓨터가 직접 알아들을 수 있는 언어
Java는 이 중 고급 언어에 속하며 플랫픔 독립성 특성을 갖는다.
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 기본구조 및 문법
Java 소스 코드 실행과정
.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
클래스명은 반드시 소스코드명과 동일해야합니다.
main()메서드
public static void main(String[] args) {
내용~~;
}
main()
메서드의 경우 프로그래밍 실행 시 가장 먼저 실행되는 메서드로, Java 프로그래밍 시 무조건 포함해줘야하는 메서드 입니다.
기본 문법 - Console 출력하기
기본적인 콘솔 출력방법 입니다.
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 프로그램 입분서 자바 완전 정복 - 김동형
위 책을 공부하며 작성하고 있습니다!
'Study > Java' 카테고리의 다른 글
[Java] 클래스의 상속과 다형성 (0) | 2024.09.15 |
---|---|
[Java] 클래스의 기본구조 (0) | 2024.09.15 |
[Java] 참조 자료형 - 배열, 문자열(String) (0) | 2024.09.15 |
[Java] 변수 선언과 기본 자료형 (2) | 2024.09.08 |
[Java] 연산자와 제어문 (1) | 2024.09.08 |