JAVA 프로그램과 기본사항

  • 식별자
    • 클래스, 변수, 메소드, 레이블 등의 이름
    • 프로그래머가 작명함
    • 작명 규칙
      1) 대소문자 구분
      2) 길이에 제한 없음
      3) 영 대소문자, 한글, 숫자, ‘_’, ‘$’를 사용
      4) 숫자로 시작할 수 없음
      5) 키워드, true, false, null은 불가

  • 식별자를 만들 때의 관례
    • 클래스 : 첫 자는 대문자, 단어의 첫 글자는 대문자, 나머지는 소문자
    • 메소드, 변수(필드) : 위와 같으나 첫 글자가 소문자
    • 상수 : 모든 문자를 대문자로 표기하고, 단어 사이에 ‘_‘를 넣어 구분
    • 변수의 경우 자료형을 표시하기 위한 접두어를 붙이기도 함

자료형

  • 변수와 자료형
    • 변수를 선언할 때, 저장되는 값의 자료형을 선언
    • 메소드를 선언할 때, 반환 값의 자료형을 선언
    • 자료형에 따라 적용 가능한 연산이 다름
  • 변수의 종류
종류 설명
인스턴스 변수 (클래스 정의에서 static이 아닌 필드) 객체가 소유하는 변수
클래스 변수 (클래스 정의에서 static 필드) 객체가 공유하는 변수
지역 변수 메소드 내부(또는 블록 내부)에서 선언된 변수
파라미터 메소드 호출 시 전달하는 값을 저장하기 위한 변수


  • 지역변수와 파라미터
    • 선언된 곳부터 해당 블록이 종료될 때까지 유효함
    • 지역변수는 초기값을 지정한 후 사용해야 함
    • 지역 변수 선언에서 접근 제어자를 사용하지 않음

  • 데이터 필드(인스턴스 변수 or 클래스 변수)
    • 선언된 클래스 내부에서 사용 가능
    • 클래스 외부에서의 사용 가능 여부는 접근 제어자에 따라 다름

  • 자바의 기본 자료형
분류 키워드 길이
문자 char 2
논리 boolean 1
정수 byte 1
정수 short 2
정수 int 4
정수 long 8
실수 float 4
실수 double 8


  • 상수
    • 리터럴(실제 데이터 값) 또는 값이 변하지 않는 변수
    • final, 선언 시 초기 값을 지정

  • 정수형 리터럴
    • 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비트 UNICODE로 인코딩 됨
    • 단일 따옴표를 사용하고 Unicode 사용가능
      • ‘\u0000’ ~’\uFFFF’
      • (0~65536)의 수와 호환됨
    • (char)65, ‘A’, ‘\u0041’, ‘가’, ‘\uAC00’

참조형

기본형을 제외한 모든 자료형

  • 배열, 클래스 형 등
    • int anArray[];
    • Circle myCircle;
    • String szStr;

  • 참조형 변수는 저장 공간에 참조 값을 저장함
    • 실제 데이터는 별도의 공간에 저장됨
  • 기본형 변수는 저장 공간에 값 자체를 저장

형변환

  • 묵시적 자료형의 변환
    • 작은 타입에서 큰 타입으로는 자동 형변환
      • byte → short → int → long → float → double

  • 명시적 자료형의 변환
    • 큰 타입에서 작은 타입으로 변환할 때는 명시적 형변환이 필요
      • 문법은 (자료형)피연산자
      • 예 : float f = (float)5.5;

연산자와 제어문

구분
산술연산자 + - * / % 단항연산자 + - ++ –
비교연산자 > >= < <= == != instanceof
논리연산자 && || 단항 ! 삼항?: & | ^
비트연산자 비트논리 & | ^ ~ 비트이동 « » »>
대입연산자 = += -= *= /= %= &= ^= |= »= «= »>=
형변환연산자 (자료형)
기타 [] ()


  • 명령행 매개 변수
    • 프로그램을 실행할 때 전달하는 인자
    • main() 함수에 전달되는 인자
    • 문자열로 전달

  • 문장의 종류
    1) 수식문
    2) 변수 선언문
    3) 제어문
    4) 기타
    - 블록문 : { … }
    - 레이블문 : 레이블 : 문장
    - 예외처리문 : try-catch문
    - 동기화문 : synchronized

제어문

  • 제어문
    • 프로그램의 실행은 기본적으로 위에서 아래로 순차 실행됨
    • 제어문은 실행 흐름을 바꿈
    • 제어문의 종류
      1) 선택문 : 조건에 따른 문장의 선택. if문, switch문
      2) 반복문 : 조건에 따른 문장의 반복. for문, while문, do-while문
      3) 분기문 : return문, break문, continue

Updated: