- 클래스 (class)
· 자바 프로그램 단위
· 일반적으로 하나의 클래스는 하나의 소스 파일로 구성
· 클래스 이름 이후에 블록 ({ })으로 구성
· 클래스 이름은 대소문자를 구분 (ex. userName과 UserName은 서로 다름)
· public 키워드를 사용하는 경우 파일 이름과 일치
- 패키지 (package)
· 다양한 자바 클래스가 모여있는 폴더 (일반적으로 관련성이 높은 클래스끼리 패키징함)
· package 키워드를 사용하여 패키지를 사용 (일반적으로 소문자 사용)
· 자바 소스 파일에 최상단에 위치
· 패키지 이름에 마침표 (.)를 이용하여 하위 폴더 경로를 지정
- 예약어 (keyword)
· 자바 언어에서 문법적으로 의미있는 단어로 사용하기 위하여 미리 예약 및 정의해둔 단어
· 일반적으로 키워드 보다는 예약어라고 부름
· 이클립스에서는 자주색 또는 파랑색 등으로 보여짐
- 예약어 종류
· 자료 자료형의 기본형
· 클래스 생성, 필드 (속성, 멤버변수) 생성 및 함수 (메서드) 생성에 사용
· 제어문 및 반복문에서 사용
- 식별자 (identifier)
· 사용자가 정의하여 사용하는 단어 (또는 단어의 조합)
· 사용자가 정의하는 클래스 이름, 필드 (속성, 멤버변수) 이름, 함수 (메서드) 이름
- 식별자 구성
· 대문자 알파벳, 소문자 알파벳, 숫자 (0~9), 밑줄 (_), 달러기호($)로 구성
· 유니코드 기반인 자바의 경우 한글도 가능
- 식별자 규칙
· 예약어는 식별자로 사용 불가능 (ex. for, while, case, etc.)
· 식별자의 첫문자는 숫자로 지정 불가 (ex. 0zero, 1first, etc.)
· 식별자는 대소문자를 구별하여 인식 (ex. 식별자 'age' 와 식별자 'Age'는 다름)
· 단어의 중간에 공백을 추가할 수 없음 (ex. user age)
· 한글을 식별자로 사용 가능
- 주석 (comments)
· 프로그램 코드의 내용에 영향을 미치지 않는 코멘트
- 주석 종류
· 한줄 주석 //
한줄 주석은 // 이후부터 그 줄의 끝까지 주석으로 인식
· 블록 주석 /* … */
여러 라인에 걸쳐 주석을 표시할 때 사용
/* 은 주석의 시작을 의미, */ 은 주석의 종료를 의미
프로그램 첫 부분에 작성자와 소스파일 관련 정보를 주석으로 처리함
· 문서화 주석 /** … */
블록 주석 시작에 * 를 하나 더 추가한 형식
/** 은 주석의 시작을 의미, */ 은 주석의 종료를 의미
JavaDocs의 문서를 볼 수 있게 처리함
- 문장
· 프로그램에서 컴퓨터에게 명려을 내리는 최소 단위
· 문장의 종료를 세미콜론 (;)으로 표현
- 블록
· 중괄호 ({ })를 사용하여 여러 문장으로 구성
· 일반적으로 스코프 (범위, 영역)을 지정할 때 사용
· 클래스의 범위, 함수의 범위, 반복문의 범위, 조건문의 범위 등
· 사용자가 임의로 블록을 구성
- 들여쓰기
· 인텐테이션
· 가독성을 위하여 클래스에 속한 필드나 메소드를 작성할 때 사용
· 일반적으로 탭 간격만큼 들여쓰고, 블록에 속한 문장 역시 탭 간격만큼 들여씀
- Hello 프로그램 구조
- console 화면 출력
· System.out.println();
· System.out.print();
· System.out.printf();
- 출력 포맷
· %d - 10진수 (decimal)로 출력
· %o - 8진수 (oct)로 출력
· %x - 16진수(hex) 소문자로 출력
· %X - 16진수(heX) 대문자로 출력
· %f - 소숫점 (float)형식으로 출력
· %c - 문자 (char)로 출력
· %s - 문자열 (string)로 출력
- 화면 입력
· System.in
· Scanner 클래스
'cs > java-spring-boot' 카테고리의 다른 글
[Zero-base] 1-6. 변수와 자료형 (0) | 2022.01.11 |
---|---|
[Zero-base] 1-5. 필드와 메소드 정의 (0) | 2022.01.11 |
[Zero-base] 1-3. 파일 확장자와 자바에서 사용하는 파일들 (0) | 2022.01.11 |
[Zero-base] 1-2. 자바 개발 환경 구축 및 JDK 설치 (0) | 2022.01.11 |
[Zero-base] 1-1. 자바 프로그래밍 시작하기 (0) | 2022.01.11 |