Skip to content

Latest commit

 

History

History
104 lines (64 loc) · 4.18 KB

File metadata and controls

104 lines (64 loc) · 4.18 KB

자바의 신 : VOL.1 기초 문법편 3판 총정리, Chapter 1 ~ 6


  • 키워드예약어

    Java 에는 키워드예약어 가 있다. 키워드프로그래밍 언어에서 이미 사전 정의된 단어 이고, 예약어키워드는 아니지만 식별자로 쓰일 수 없는 단어 이다.

    이처럼 둘을 구분짓는 것은 버전 별 상위 호환성 (Forward compatibility) 을 맞추고, 하위 버전 프로그램의 안정성을 도모하기 위함이다.


  • Java 의 변수

    Java 에 존재하는 변수는 크게 4 가지로 나눌 수 있다.

    • 인스턴스 변수 (Instance Variable)

      인스턴스 변수는 클래스 필드에 선언된 변수로, non-static 하게 선언된 변수이다.

    • 클래스 변수 (Class Variable)

      클래스 변수는 클래스 필드에 static 하게 선언된 변수이다.

    • 지역 변수 (Local Variable)

      지역 변수는 어느 블럭에서만 수명이 유지되는 변수를 뜻한다. 지역 변수는 생성시 stack 에 저장되고, 블럭을 벗어날시 참조할 수 없으며 수명 또한 보장되지 않는다.

    • 매개 변수 (Parameter)

      메서드 호출 시 메서드로 넘겨지는 변수들을 말한다. 메서드로 넘겨지는 방식은 pass by value, pass by reference 가 있으며 이는 각각 primitive types, reference type 인 매개변수을 사용할 때 이루어진다.

    이 중 인스턴스 변수는 객체의 수명과 동일한 수명을 가졌으나, 클래스 변수는 static 하므로 프로그램의 수명과 동일하다.

  • Java 의 기본 자료형 8 가지

    Java 의 기본 자료형은 총 8 개 이고, 이는 크게 다음 3 가지로 나눌 수 있다.

    • Numeric type

      type storage usage
      byte 1 byte signed 8-bit field 에 관한 연산을 진행할 수 있음
      char 2 byte 한 문자를 표현. 16-bit Unicode 이용
      short 2 byte 반쪽자리 int
      int 4 byte 일반적인 정수 표현
      long 8 byte int 2 배
    • Floating point type

      type storage usage
      float 4 byte 단 정밀도 부동소수점 표현
      double 8 byte 배 정밀도 부동소수점 표현
    • Boolean type

      type storage usage
      bool 1 byte true or false 에 해당하는 값 이용

    Java 에서 Numeric type 들은 대개 부호 있는 값 (signed values) 들 이다. 하지만 char 만 예외적으로 unsigned value 이다.

    또한 기본 자료형 간 형 변환Numeric types <--> Floating point types 만 가능하다. bool 은 어떤 방식으로든 형 변환이 불가능하다.

    덧붙여 이들이 클래스 변수 와 같이 것으로 선언되었을 때, 기본적으로 초기화 되는 값들은 다음과 같다.

    Type Default value
    byte 0
    short 0
    int 0
    long 0L
    char 0
    float 0.0f
    double 0.0d
    boolean 0, \u0000
    Reference null

  • Javaswtich 구문

    Java 에도 switch 구문이 존재한다. C 에서 switch 는 정수형 값만 사용될 수 있다. 하지만 Java 는 다음과 같은 타입도 가능하다.

    • Numeric Type : long 을 제외한 Numeric Type

      byte, char, short, int

    • 사용 가능한 Numeric TypeWrapper class

      Byte, Character, Short, Integer

    • 몇몇 참조형 타입

      Enum (enumerated types), String (Java 7 부터 추가)

  • label in for loop

    Java 에서 nested loop 를 중단시킬 때, label 이라는 것을 이용해 중단시킬 수도 있다. 많이 사용되지는 않지만 처음 본 내용이라 정리하였다.