[Java] 코드 구조

Yumya's record·2025년 4월 16일

SKALA

목록 보기
20/25
post-thumbnail

🦈 자바 코드 구조 정리 🦈

코드 구조

클래스 블록, 메서드 블록, 명령문으로 구성된다.

클래스 블록

public class <class_name> {
	...
}
  • 자바 코드의 가장 바깥쪽 영역
  • 클래스명은 소스 파일과 이름이 일치해야 한다.
  • 하나의 클래스 블록 안에 여러 개의 메서드 블록을 포함할 수 있다.
    = 하나의 클래스 안에 여러 개의 메서드 정의 가능
  • 중괄호{}로 감싸진다.

메서드 블록

  • 어떠한 기능을 하는 함수
  • 중괄호{}로 감싸진다.
<Access Modifier> <return_type> <function_name>(<param_type> <param_name>) {
    	<code ...>
    	return <return_value>;
}
  • Access Modifier : 접근 제어자
    • public, private, protected, default가 있다.
  • return_type : 반환 타입
    • return_value의 타입(void, int 등)과 일치해야 한다.
    • void : 아무것도 반환하지 않음을 의미한다.
  • return_value : 반환 값
    • 외부로 반환한 값을 정의한다.
  • function_name : 메서드 이름
  • param_type : 매개변수 타입
  • param_name : 매개변수 이름

명령문 블록

  • 메서드가 실행되면 실제로 수행하는 코드 블록
  • 세미콜론;으로 문장이 끝났음을 알린다.
  • 위의 메서드 내부 <code ...>에 해당
int x = 1; //x를 1에 대입

System.out.println("Hello world"); // Hello world 출력
  • 명령문을 통해 하나의 기능을 하는 하나의 메서드를 정의한다.

System class

Java 표준 라이브러리에 포함된 클래스 중 하나

  • Java 응용 프로그램의 표준 입력, 출력, 에러 스트림 및 시스템 프로퍼티 등과 관련된 여러 유틸리티 메서드를 제공한다.
  • System.out : 표준 입력 스트림
  • System.err : 표준 에러 스트림
  • System.in : 표준 입력 스트림

전체 코드 구조

public class <class_name> {
	public static void main(String[] args) {
    	<code ... >
	}
    
    <Access Modifier> <return_type> <function_name>(<param_type> <param_name>) {
    	<code ...>
    	return <return_value>;
   }
}

main Method

프로그램의 시작점

public static void main(String[] args) {
    	<code ... >
}
  • public : 어디서나 접근 가능하게 하는 접근 제어자
    자바 런타임이 이 메서드를 호출해야 하므로 항상 public이여야 한다.
  • static : 인스턴스를 만들지 않고 호출할 수 있도록 한다.
    자바는 클래스 인스턴스를 생성하지 않고 main 함수를 바로 호출한다.
  • void : 반환값이 없음을 의미한다.
  • main : 자바 프로그램의 시작점으로 인식되는 특별한 메서드 이름
    클래스 내부에 따로 main을 지정할 경우 실행 시점에 어떤 클래스를 실행하느냐에 따라 해당 클래스의 main 메서드만 호출한다.
  • String[] args : 커맨드 라인에서 전달된 인자들을 배열로 받는다.
    ex) $java Main hello world -> args[0] = "hello", args[1] = "world"

public static void main(String[] args)
이 형식은 변경할 수 없으며, 이 틀을 정확히 따라야 JVM이 해당 메서드를 인식하고 실행할 수 있다.

profile
🍀 ٩(ˊᗜˋ*)و 🍀

0개의 댓글