//파일 이름: Hello.java
public class Hello{ ───┐
public static void main(String[] args){ ───┐ 클래스 정의
System.out.println("Hello Java"); 메소드 정의
} ───┘
} ───┘
▶ 자바 기본 구조
1. 클래스의 정의
- 자바에서 클래스를 하나의 단위로 프로그램을 작성하므로 자바 소스 파일 안에 반드시 클래스 정의.
- 클래스를 정의하는 기본형식은 예약어 class 다음에 클래스명을 기술하고 중괄호{ } 표시.
- 위에 클래스에 기술한 내용이 제대로 동작하려면 자바 소스 파일명이 클래스명과 동일하게 "Hello"로 저장되어야 한다.
- 확장자는 "java"여야 자바 컴파일러가 컴파일 대상으로 인식.
- 자바에서 초기화
- 선언한 객체에 최초로 값을 넣어주는 것.
- 클래스 영역에서 선언할 경우에는 컴파일러가 자동으로 값 할당을 해주나 메서드 영역에서 선언할 경우에는 자동으로 값이 할당되지 않기 때문에 에러가 발생해서 그렇다.
2. main 메소드 정의
- 클래스는 멤버들로 구성되는데 멤버에는 크게 필드(변수 형태)와 메서드(함수 형태)가 있다.
- 위에 소스에서는 하나의 메서드로 이름이 main이다.
- 이름이 main인 메서드는 프로그램의 진입점이 되므로 프로그램을 실행시키면 main함수내부에 기술된 내용들을 순차적으로 수행한다.
public static void main (String[] args)
────── ────── ──── ──── ─────────────
① ② ③ ④ ⑤
① public
- public은 누구나 접근 가능하도록 하기 위한 예약어
② static
- static으로 선언된 메서드는 클래스만 존재하면 수행 할 수 있도록 한다.
- 메소드는 클래스 단위로 수행되는 메서드와 인스턴스가 따로 존재해야만 수행할 수 있는 메서드로 나뉜다.
- 인스턴스가 없이도 클래스명으로 접근해야 바로 수행되도록 하기 위한 메서드는 static을 사용한다.
③ void
- void는 값을 갖지 않는다는 의미를 갖는 자료 형태이다.
- 메소드는 리턴 값의 형태를 명시해야 하는데 main메서드가 리턴 값을 갖지 않음을 나타내기 위해 void를 사용한다.
④ main
- 메서드의 이름.
- 자바에서는 일반적으로 ()는 메서드를 의미하며, () 앞에 기술 된 것이 메소드의 이름이 된다.
- 자바 애플리케이션을 실행시키면 이름이 main인 메소드를 찾아 이 내부에 기술된 내용들을 순차적을 실행한다.
- 그래서 main 메소드를 프로그램의 진입점이라고 한다.
⑤String[] args
- 메서드를 실행시키기 위한 재료가 될만한 데이터를 전달받야 할 경우 메소드 이름 다음에 기술하는 ()을 사용한다.
- () 안에 기술한 args가 메서드에 값을 전달했을 경우 이를 받아 올 수 있는 전달 인자가 된다.
3. 문장
- main메서드를 정의하면 이 메소드 안에 수행할 내용을 시술한다.
- 자바는 문장 단위로 프로그램을 작성한다.
- 메소드 내부에 기술할 문장으로는 변수의 선언문이나 다른 메소드를 호출하는 문장들이 있다.
- 자바는 세미콜론으로 끝나면 이를 하나의 문장으로 인식한다. 반드시 세미골론으로 마감.
4. 출력
System.out.println("Hello Java");
- System.out.pringln() 메서드는 큰 따옴표(")로 둘러싸인 문자열을 화면에 출력한다.
'프로그래밍 > Java' 카테고리의 다른 글
Java 제어문(반복문 (for, while, do while), 보조 제어문(break, continue)) (0) | 2021.08.15 |
---|---|
Java 제어문(조건문 if, switch case) (0) | 2021.08.14 |
JAVA(자바) 연산자(operator) (0) | 2021.08.13 |
Java 자료형과 변수, 형 변환 (0) | 2021.08.11 |
JAVA 특징과 객체지향언어 특징 (0) | 2021.07.30 |
댓글