<목차>
• 자바 소스코드의 구성 요소
큰 틀로 보면 패키지(Package), 임포트(Import), 클래스(Class), 인터페이스(Interface), 메서드(Method) 등으로 구성된다.
이 요소들은 자바 언어의 구조를 이루는 기본적인 구성이다.
1. 패키지(Package)
패키지는 소스코드의 구조를 조직화하는 데 사용된다.
과련된 클래스와 인터페이스들을 묶어주는 개념으로, 패키지의 이름은 보통 역순 도메인 이름을 사용한다.
간단한 예시로 'com.example.myapp'과 같은 패키지 이름을 사용할 수 있다.
2. 임포트(Import)
임포트 문은 다른 패키지에 속한 클래스 또는 인터페이스를 현재 파일에서 사용할 수 있게 해주는 역할을 한다.
'import' 키워드를 사용하여 클래스명을 명시하거나 '*'을 통해 해당 패키지의 모든 클래스를 가져올 수 있다.
3. 클래스(Class)
클래스는 객체를 만들기 위한 템플릿(틀, 판, 형식)이자 속성(필드)과 동작(메서드)을 포함한다.
클래스가 만들어낸 객체(인스턴스)를 생성하여 자유롭게 사용할 수 있으며, 하나의 자바 파일(.java)은 여러 개의 클래스를 포함할 수 있으나, public 클래스는 해당 파일명과 동일해야 하며, 해당 클래스로부터 실행이 시작된다.
4. 인터페이스(Interface)
인터페이스는 클래스와 달리 메서드의 시그니처(흔적)만 정의하고, 구현은 하지 않는 특별한 형태의 클래스이다.
클래스는 인터페이스를 구현하여 정의된 메서드들을 구현해야 한다.
인터페이스는 다중 상속이 가능하므로, 하나의 클래스가 여러 개의 인터페이스를 구현할 수 있다.
5. 메서드(Method)
메서드는 클래스나 인터페이스에 정의된 동작을 나타내는 블록이다.
매개변수를 받아들이고, 어떤 동작을 수행한 뒤 결과를 반환할 수 있어야 한다.
메서드는 반드시 메서드 시그니처와 동작 내용으로 구성되어야 한다.
• 자바 코드 형태
// 패키지 선언
package com.example.myapp;
// 임포트 선언
import java.util.ArrayList;
import java.util.List;
// 클래스 정의
public class 클래스명 {
// 필드(속성) 선언
private int 정수형 변수명;
private String 문자형 변수명;
// 생성자(Constructor)
public 클래스명(int 정수형 변수명, 문자형 변수명) {
this.정수형 변수명 = 정수형 변수명;
this.문자형 변수명 = 문자형 변수명;
}
// 메서드 정의
[public | private | protected] [static] (리턴 자료형 | void) 메서드명(입력자료형 매개변수, ...) {
메서드 실행 내용(명령문, statement);
...
System.out.println("정수형 변수값 : " + 정수형 변수명);
System.out.println("문자형 변수값 : " + 문자형 변수명);
}
// main 메서드 (프로그램 실행 시작점)
public static void main(String[] args) {
클래스명 인스턴스명 = new 클래스명(10, "Hello world"); // 생성자로 생성한 값들을 부여
인스턴스명.메서드명(); // 정의했던 실행 메서드를 수행
}
}
클래스 단위로 구성되며, 클래스 안에는 필드와 메서드가 정의된다.
'main' 메서드는 자바의 실행 시작점으로, 프로그램이 실행될 때 가장 먼저 수행되는 부분이다.
클래스 이름과 파일 이름은 동일해야 하며, public 클래스는 해당 파일의 이름과 동일해야 한다.
[public | private | protected] 는 접근 제어자에 대한 것으로 접근 범위에 따라 선택하면 된다.
물론 아무것도 작성해 주지 않아도 된다. 이럴 경우 디폴트 값이 입력된다.
[static] 키워드는 올 수도 있고 안올 수도 있다. static 키워드가 붙으면 정적 메서드가 된다.
(리턴 자료형 | void)는 메서드 실행 후 반환되는 값의 자료형태를 뜻한다.
리턴되는 값이 있는 경우 반드지 리턴 자료형을 입력해줘야 한다. 만약 리턴 값이 없는 경우라면 void로 표기해야 한다.
메서드에 static 키워드가 붙으면 클래스 메서드가 되어 객체를 만들지 않아도 '클래스명.메서드명' 형태로 호출이 가능.
'String[] args'는 메서드의 매개변수로, String[]은 배열 자료형을, args는 argument의 줄임말로 인수를 의미한다.
물론 args말고 다른 것을 입력해도 되지만 일반적으로 args를 사용한다.
# 참고 - '점프 투 자바'
'자바(JAVA)' 카테고리의 다른 글
자바 - 문자 (0) | 2023.08.10 |
---|---|
자바 - 변수와 자료의 형태 (0) | 2023.08.08 |
자바 - 싱글톤 패턴(Singleton Pattern) (0) | 2023.07.22 |
자바 - Static(정적 메서드와 변수) (0) | 2023.07.07 |
자바 - 접근 제어자(Access Modifier) (0) | 2023.06.24 |