출처 : https://wikidocs.net/book/31
점프 투 자바
**초보 프로그래머를 위한 자바 입문서** 이 책은 문법위주의 지식보다는 이해중심의 지식을 전달하는 것을 주 목적으로 한다. 예를 들어 자바에서 잘 파악하기 힘든 개념 ...
wikidocs.net
필사 :
2장 : 반드시 알아두어야 할 가장 기본적인 것들 학습하기
자바 소스코드의 구조
보통 일반적인 자바 소스코드는 다음과 같은 형태로 만들어진다.
클래스명.java
/* 클래스 블록 */
public class 클래스명 {
/* 메소드 블록 */
[public|private|protected] [static] (리턴자료형|void) 메소드명1(입력자료형 매개변수, ...){
명령문(statement);
···
}
/* 메소드 블록 */
[public|private|protected] [static] (리턴자료형|void) 메소드명2(입력자료형 매개변수, ...){
명령문(statement);
···
}
···
}
소스코드의 가장 바깥쪽 영역은 class 블록이다.
클래스명은 원하는 이름으로 지을 수 있다.
단, 클래스명은 소스파일의 이름(클래스명.java)과 동일하게 사용해야 한다.
> 참고 : public class -> 코드의 가독성 증가, 자바 파일명과 클래스명의 일치 확인 용도로
그리고 class 블록은 메소드 블록들을 포함한다.
메소드 블록 부분에서 [public|private|protected]라고 되어있는 부분의 의미는
public, private, protected 또는 아무것도 오지 않을 수 있다는 의미이다.
public, private, protected라는 것은 메소드의 접근제어자를 뜻하는데
이것에 대해서는 뒤에서 자세히 다루고 있다.
> 참고 : 접근제어자
-> 변수,메소드를
[해당 클래스/동일 패키지/해당 클래스를 상속받은 다른 패키지의 클래스] 에서만
/어떤 클래스에서든 접근 가능하도록 설정.
[static]
-> static 변수 => 메모리 할당을 딱 한 번만. 메모리 사용 이점.
static 메소드 => 객체 생성없이 클래스를 통해 메소드 직접 호출 가능.
singleton pattern => 단 하나만의 객체를 생성하게 강제하는 패턴.
(이해가 안간다.. 이렇게만 정리하고 넘어가자)
(리턴자료형|void)
-> 메소드가 실행된 후 리턴되는 값의 자료형을 의미.
리턴값이 있을 경우 반드시 리턴 자료형을 표기해야 한다.
리턴값이 없으면 void로 표기.
둘 다 생략할 수 없고 void 또는 리턴자료형이 반드시 있어야 한다.
(그래서 [ ] 대신 ( )로 표시)
메소드명 뒤 입력 인자 ( )
-> 입력 인자의 갯수는 제한이 없다.
입력 인자는 "입력자료형"+"매개변수명" 형태로 이루어진다.
클래스 내에는 이러한 메소드들이 여러개 올 수 있다.
소스코드의 예
sample.java
public class Sample {
public static void main(String[] args) {
System.out.println("Hello java");
}
}
클래스 블록
public class Sample {
(... 생략 ...)
}
이 클래스의 클래스명은 Sample이다.
소스코드의 가장 바깥쪽은 클래스(class) 블록이다.
클래스 블록은 중괄호({})로 둘러싸야 한다.
{ - 블록의 시작
} - 블록의 끝
public은 자바의 접근제어자로
어디서든 이 클래스에 접근할 수 있음을 의미한다.
class는 클래스 블록을 만드는 키워드이다.
메소드 블록
클래스 블록 안에는 다음과 같은 메소드 블록이 있다.
public class Sample {
public static void main(String[] args) {
(... 생략 ...)
}
}
이 메소드의 메소드명은 main이다.
메소드 블록 역시 중괄호로 영역을 구분한다.
클래스 블록 안에는 여러개의 메소드 블록이 있을 수 있다.
public, static, void 등에 대해서 일단 간단히 알아보고 넘어가자.
static - 이 메소드는 클래스 메소드가 되어 객체를 만들지 않아도 "클래스명.메소드명" 형태로 호출 가능하다.
void - 메소드의 리턴타입 중 하나. 리턴값이 없음을 의미.
String[] args - 메소드의 매개 변수. args 변수는 String[] 배열 자료형임을 의미. arguments : 관례적인 이름. 이름 변경 가능.
명령문 (Statement)
마지막으로 메소드 블록 안에는 명령문(Statement)이 있다.
public class Sample {
public static void main(String[] args) {
System.out.println("Hello java");
}
}
위와 같이 컴퓨터에게 무언가 일을 시키는 문장을 명령문이라고 한다.
명령문은 반드시 세미콜론(;)을 붙여 문장의 끝을 표시해야 한다.
메소드 블록 아에는 여러 개의 명령문이 있을 수 있다.
느낀점 :
자바 소스코드 구조에 대해서 조금 깊게 알게 되었다.
static 부분이 정확히 이해가 가지 않지만, 일단은 넘어가겠다.
'국비학원 전 강의 필사 > 점프 투 자바' 카테고리의 다른 글
#02-03 명명 규칙 - <점프 투 자바> (0) | 2022.08.24 |
---|---|
#02-02 변수와 자료형 - <점프 투 자바> (0) | 2022.08.24 |
#01-04 자바 산책하기 - <점프 투 자바> (0) | 2022.08.19 |
#01-03 안녕 세상! - <점프 투 자바> (0) | 2022.08.17 |
#01-02 자바의 특징 - <점프 투 자바> (0) | 2022.08.17 |
댓글