728x90
반응형
식별자
- 클래스, 변수, 메소드, 레이블 등의 이름
- 프로그래머가 작명함
작명 규칙
- 대소문자 구분
- 길이 제한 없음
- 영문 대소문자, 한글, 숫자, _, $ 등 사용
- 숫자로 시작할 수 없음
- 키워드, boolean 값, null 불가
식별자를 만들 때의 관례
- 클래스 : 첫 글자와 단어의 첫 글자는 대문자, 나머지 소문자 (카멜 표기법)
- 메소드, 변수(필드) : 위와 같으나 첫 글자가 소문자
- 상수 : 모든 문자를 대문자로 표기하고, 단어 사이에 '_'를 넣어 구분
-> static final int : 상수 - 변수의 경우 자료형을 표기하기 위한 접두어를 붙이기도 함 (헝가리안 표기 법)
키워드
- 의미가 미리 정해진 단어
- 프로그램에서 정해진 의미로만 사용해야함 (변수명으로 사용 불가)
자료형
변수와 자료형
- 변수를 선언할 때, 저장되는 값의 자료형 선언
- 메소드 선언 시 , 반환 값의 자료형을 선언
- 자료형에 따라 적용 가능한 연산이 다르다
변수의 종류
- 인스턴스 변수 : g1.e = 80; 일 때 .e에 해당하는 필드
- 클래스 변수 : static으로 정의한 클래스 내부 필드
변수의 사용 범위
지역 변수와 파라미터
- 선언된 곳부터 해당 블록이 종료될 때 까지 유효함
-> 메소드가 실행될 때 생성, 끝나면 없어진다 - 지역변수는 초기값을 지정한 후 사용해야함 (초기값을 설정하지 않을 시 0으로 초기화 됨)
- 지역변수 선언에서 접근 제어자를 사용하지 않음 (접근 제어자 - 어디에서 사용될 수 있는지)
- 데이터 필드 (인스턴스 변수, 클래스 변수)
- 선언된 클래스 내부에서 사용 가능
- 클래스 외부에서의 사용 여부는 접근 제어자(access modifier)에 따라 다르다
자바의 기본 자료형
리터럴
상수
- 리터럴(실제 데이터 값) 또는 값이 변하지 않는 변수
- 예 : final int nConst = 3; (선언 시 초기 값을 지정
정수형 리터럴
- byte, short, int, long
- 소문자 l이나 대문자 L로 끝나면 long, 나머지는 int
-> byte와 short는 허용 범위 안에서 int와 호환됨 - 26L, 26, 0b11010(2진수), 032(8진수), 0x1a(16진수)
실수형 리터럴
- 소수점이 있는 숫자
- f나 F로 끝나면 float형, 나머지는 double형
- 123.4f , 123.4, 1.234e2
문자형 리터럴
- 1개의 문자를 표현하고 16비트 유니코드로 인코딩됨
- 단일 따옴표를 사용하고 유니코드 사용 가능
-> '\u0000''\uFFFF'65536의 수와 호환됨
-> 0 - (char) 65, 'A', '\u0041
참조형 (C에서의 포인터 같은)
- 기본형을 제외한 모든 자료형
-> 참조 값(주소)을 가지는 자료형 - 대표적으로 배열, 클래스 등이 있다
-> int anArray[];
-> String szStr; - 참조형 변수는 저장 공간에 참조 값을 저장
-> 실제 데이터는 별도의 공간에 저장됨 - 기본형 변수는 저장 공간에 값 자체를 저장함
형변환
묵시적 자료형의 변환
- 작은 타입에서 큰 타입으로는 자동 형변환 가능
명시적 자료형의 변환
- 큰 타입에서 작은 타입으로 변환할 때는 명시적 형변환이 필요
-> 예 : (자료형)피연산자
연산자와 제어문
연산자의 종류
- 비트이동 : >> 두 개는 양수일 경우 0으로 음수는 1로 채우고 >>> 세 개는 상관 없이 0으로 채움
명령 행 매개 변수
- 프로그램을 실행할 때 전달하는 인자
- main() 함수에 전달되는 인자
- 문자열로 전달됨
문장의 종류
- 수식문
- 변수 선언문
- 제어문
- 기타
- 블록문 -> {}
- 레이블문 -> LABEL : 문장 )
- 예외처리문 -> try-catch
- 동기화문 -> synchronized
제어문
- 프로그램의 실행은 기본적으로 위에서 아래로 순차 실행됨
- 제어문은 실행 흐름을 바꾼다
제어문의 종류
- 선택문 : if, switch
- 반복문 : for, while, do-while
- 점프문(분기문) : return, break, continue
선택문
- if
- if else
-> else는 자기 짝이 없는 가장 가까운 if와 짝을 이룬다
- switch
-> 다중 선택구조
-> case 조건은 정수와 호환되거나 String 값
-> default는 생략 가능
-> case조건마다 break를 사용- 배열이나 컬렉션의 원소들을 차례로 다룰 때 편리
- 형식 : for (변수선언 : 배열) { 실행문; }
- for-each문 (개선된 for문)
break
- 반복문, switch문을 빠져나올 때 사용
- 레이블을 사용하여 특정 블록 또는 특정 반복문을 빠져나갈 수 있음
-> 중첩 for문에서 바깥 for문을 종료하는 경우
-> 형식 : break LABEL-> 반복문에 레이블을 지정할 경우 LABEL:반복문
continue
- 반복문 안에서 사용
- 가장 가까이 있는 반복문의 다음 반복으로 이동
- 레이블을 사용하여 특정 반복문의 다음 반복으로 이동 가능
-> 중첩 for문에서 바깥 for문의 다음 반복으로 갈 때
-> 형식 : continue LABEL;
반응형
'프로그래밍 언어 > Java' 카테고리의 다른 글
Java) 인터페이스와 다형성 (0) | 2021.04.21 |
---|---|
Java) 4. 클래스와 상속 (0) | 2021.04.09 |
Java) 3. 기본 문법(2) - 배열과 문자열, 클래스 (0) | 2021.03.30 |
Java 설치 및 환경변수 설정 (0) | 2021.03.03 |
Java) 1. Java 와 객체지향 프로그래밍 (0) | 2021.03.03 |
댓글