자바의 정석 2장

Munang·2021년 6월 6일
0

자바의 정석

목록 보기
2/6

1. 변수

  • 변수 = 변하는 수 = 단 하나의 값을 저장할 수 있는 메모리 공간
  • 변수 선언
int age; // age 라는 이름의 변수를 선언
  • 변수의 초기화
    변수 초기화 : 메모리는 여러 프로그램이 공유하는 자원이므로, 전에 다른 프로그램에 의해 저장된 '알 수 없는 값(쓰레기 값)'이 남아있을 수 있음
  • 지역변수는 사용되기 전에 초기화를 반드시 해야 하지만 클래스변수와 인스턴스변수는 초기화를 생략할 수 있다.

2. 변수의 명명규칙 & 컨벤션 룰

  • 대소문자가 구분되며 길이에 제한이 없다. -> True != true
  • 예약어를 사용해서는 안된다. -> true 예약어라 안됨
  • 숫자로 시작해서는 안된다.
  • 특수문자는 '_'와 '$'만을 허용한다.
  • 클래스 이름의 첫 글자는 항상 대문자
  • 변수와 메서드 이름의 첫 글자는 항상 소문자

3. 변수의 타입(내가 잘 모르는 부분 중요 !)

  • 기본형과 참조형
    기본형 변수는 실제 값(data)를 저장하고, 참조형 변수는 어떤 값이 저장되어 있는 주소(address)를 값으로 갖는다.
    - 기본형 : boolean, char, byte, short, int, long, float, double
    - 참조형 : 객체의 주소를 저장, 위의 8가지 제외한 모든 타입

  • 자바에서 연산에 사용되는 변수는 항상 기본형 변수

  • 참조형 변수를 선언할 때는 변수 타입으로, 클래스의 이름을 사용하므로 클래스의 이름이 참조변수의 타입이 된다.
    그래서 새로운 클래스를 작성 -> 새로운 참조형을 추가

  • 참조형 변수 선언

 Date today = new Date(); // Date객체를 생성해서, 그 주소를 today에 저장

참조변수는 null 또는 객체의 주소를 값으로 갖는다.
객체를 생성하는 연산자 new의 결과는 생성된 객체의 주소이다. 이 주소가 대입 연산자 = 에 의해 today에 저장된다.

  • 참조형 변수는 객체의 주소를 값으로 갖는다. JVM이 32bit 이면, 참조형 변수의 크기는 4byte

  • 자료형 은 기본형 중에서 뭐냐? 타입 -> 기본형이냐 참조형이냐? 혹은 기본형 8가지 중 어떤 타입이냐? 총칭해서 물어보는 것

  • 실수형은 오차가 발생할 수 있다. float의 정밀도는 7으로, 10진수로 7자리의 수를 오차 없이 저장할 수 있다. 그 이상은 double(15) 사용 권장 !

4. 상수와 리터럴 (constant & literal)

  • 상수는 변수와 마찬가지로 값을 저장할 수 있는 공간이지만, 변수와 달리 한번 값을 저장하면 다른 값으로 변경 X
  • 변수 선언 앞에 final을 붙여주자
final int MAX_SPEED =10;
  • 상수는 선언과 동시에 초기화가 필수이다.

  • 상수는 대문자로 하는 것이 암묵적 관례, 여러 단어일 경우 _으로 구분한다.

  • 원래 상수는 그냥 값을 지칭했는데, 변할 수 없는 수로 정의해버려서 구분하기 위해 나온 것이 리터럴

  • 리터럴 -> 그 자체로 값을 의미하는 것이다.

0개의 댓글