[로데시] 개발

[정처기 실기] 6. 프로그래밍 언어 활용 요약 - JAVA1 본문

자격증/정보처리기사 - 실기

[정처기 실기] 6. 프로그래밍 언어 활용 요약 - JAVA1

로데시 2026. 3. 27. 15:10
반응형
☰   정보처리기사 실기  




Ⅵ. 프로그래밍 언어 활용

03. JAVA

0️⃣ 자바 기본 구조

ㆍ클래스 단위
ㆍ프로그램은 public static void main부터 시작



1️⃣ 자료형(Data Type)

(1) 자료형 유형
ㆍ문자형 - char
ㆍ문자열형 - String
ㆍ정수형 - byte, short, int, lond (순서대로 1, 2, 4, 8 byte 크기)
ㆍ부동 소수점형 - float, double
ㆍ논리형 - boolean




2️⃣ 변수(Variable)

(1) 변수 개념
ㆍ어떠한 값을 주기억 장치에 기억하기 위한 공간


(2) 변수 유효범위
 
📌 전역 변수(Global Variable)
ㆍ클래스 블록에 선언
ㆍ생성 - 클래스 시작
ㆍ종료 - 클래스 종료
ㆍ초기화 안 할 시 -> 정수 = 0, 실수 = 0.0, 문자 = NULL 로 자동 초기화


📌 지역 변수(Local Variable)
ㆍ블록 내에서 선언
ㆍ선언 - 블록이 시작하는 부분
ㆍ종료 - 중괄호가 닫히는 시점
ㆍ해당 블록 내에서만 사용 가능


📌 static 변수(Static Variable)
ㆍstatic 키워드와 선언
ㆍ생성 - 프로그램 시작
ㆍ종료 - 프로그램 종료
ㆍstatic int count = 0; // 초기화 한 번만 실행
ㆍ객체 생성 없이도 메서드 사용 가능


3️⃣ 배열(Array)

(1) 배열 개념
ㆍ같은 타입 변수들의 집합


(2) 배열 선언
 
📌 1차원 배열 선언
ㆍ초기값 X - 정수 0, 실수 0.0, 문자열 NULL로 저장
자료형 []배열명 = new 자료형[요소개수];
자료형 배열명[] = new 자료형[요소개수];

ㆍ초기값 O
자료형 []배열명 = new 자료형[요소개수];
자료형 배열명[] = { 초기값1, 초기값2, ... };


📌 2차원 배열
ㆍ초기값 X - 정수 0, 실수 0.0, 문자열 NULL로 저장
자료형 [][]배열명 = new 자료형[행][열];
자료형 배열명[][] = new 자료형[행][열];

ㆍ초기값 O
자료형 []배열명 = new 자료형[요소개수];
자료형 [][]배열명 = { {초기값1, 초기값2, ...}, {초기값a, 초기값b, ...}, {초기값ㄱ, 초기값ㄴ, ...} };




4️⃣ 표준 입출력 함수

(1) 표준 출력 함수
System.out .print(); // 개행(enter, next line)을 하지 않음
  .println(); // 개행을 함
  .printf(); // 변수 출력 가능 (like C언어)


(2) 표준 입력 함수
System.in.readLine();  // BufferReader와 함께 사용




5️⃣ 연산자(Operator)

ㆍ문자열 + 문자열/정수/실수 = 문자열
"5 + 2 = " + 3 + 4  // 3, 4가 모두 문자열이 되어서 5 + 2 = 34가 출력
5 + 2 + "= 3 + 4"  // 5, 2는 연산을 하고 문자열이 출력되어 7 = 3 + 4가 출력


(1) 연산자 종류
ㆍ증감 연산자   ++ --
ㆍ산술   + - * / %
ㆍ시프트   << >>
ㆍ관계   > < >= <= == !=
ㆍ비트   & | ^(XOR) ~
ㆍ논리   && || !
ㆍ삼항   (조건식) ? (참) : (거짓)
ㆍ대입  = += -= *= /= %=


(2) 연산자 우선순위
증감 산술 시프트 관계 비트 논리 삼항 대입
1. x++ x--
2. ++x --x
 !
 ~
3. * / %
4. + -
5. << >>
6. < <= > >=
7. == !=
8. &
9. ^
10. |
11. &&
12. ||
13. (조건식) ? (참) : (거짓)
14. = += -= *= /= %=


(3) 연산자 상세
 
📌 증감 연산자 (Incremenmt & Decrement Operator)
x++  vs.  ++x 차이점
ㆍx++ / x-- : 변수 값 사용 -> 값을 1 증가/감소
ㆍ++x / --x : 값을 1 증가/감소 -> 변수 값 사용


📌 산술 연산자
/ (나누기 연산)
ㆍ정수 / 정수 = 정수
ㆍ정수 / 실수 = 실수
ㆍ실수 / 정수 = 실수
ㆍ실수 / 실수 = 실수
 
% (나머지 연산)
ㆍ정수끼리만 사용


📌 시프트 연산자 (Shift Operator)
ㆍa << b: a * 2b
ㆍa >> b: a / 2b


📌 비트 연산자 (Bit Operator)
ㆍ& : AND 연산자. 모두 1이면 1, 하나라도 0이면 0
ㆍ| : OR 연산자. 하나라도 1이면 1, 모두 0이면 0
ㆍ^ : XOR 연산자. 서로 다르면 1, 같으면 0
ㆍ~ : NOT 연산자. 0 ↔ 1. 0이면 1, 1이면 0


📌 논리 연산자 (Logic Operator)
ㆍ&& : AND 연산자. 모두 True면 True, 하나라도 Fasle면 False
ㆍ|| : OR 연산자. 하나라도 True면 True, 모두 Fasle면 Fasle
ㆍ! : NOT 연산자. False ↔ True. False면 True, True면 False
ㆍcf : 참이면 1, 거짓이면 0을 반환




6️⃣ 조건문

(1) if 문
ㆍ조건의 참 거짓 여부에 따라 경로 선택
ㆍ코드 한 줄일 경우, 중괄호 생략 가능


(2) switch 문
ㆍ여러 개의 경로 중 하나의 경로 선택
ㆍ경우와 일치하는 case 문 실행
ㆍ경우와 일치하는 case 없으면 default 실행
ㆍbreak 만날 때 까지 계속 실행 (break 없으면 모든 case, default 까지 실행됨)




7️⃣ 반복문

(1) while 문
while(조건문){
  명령문;
}

ㆍ조건문이 참일 동안 명령문 반복 수행


(2) do while 문
do{
  명령문;
} while(조건문)

ㆍ조건문의 참 거짓 여부에 관련 없이 무조건 반복문 한 번 수행
ㆍ이후 조건문이 참일 동안 명령문 반복 수행


(3) for 문
for(초기식; 조건식; 증감식){
  명령문;
}

ㆍ조건식이 참일 경우 명령문 수행
ㆍ증감식으로 값 변경, 조건식 참일 경우 명령문 수행 과정을 반복


(4) for each 문
for( 제어변수 : 배열 ) {
  명령문;
}

String[] grade = { A, B, C };
for( String g : grade ) {
  System.out.print(g); // 결과: ABC
}

ㆍ배열, 리스트 크기만큼 반복
ㆍ배열, 리스트 항목을 순차적으로 변수에 대입




8️⃣ 메서드

(1) 사용자 정의 함수(메서드)
ㆍ사용자가 직접 새로운 함수 정의
ㆍ매개변수, 생성된 변수 -> 사용자 정의 함수 종료되면 없어짐


(2) static 메서드
ㆍ클래스가 메모리에 올라갈 때 -> 자동으로 생성됨
ㆍ인스턴스 생성 X -> 메서드 호출 가능


반응형