기본 자료형(Primitive variable)
- 프로그래밍 언어에서 미리 만들어둔 타입
- 변수에 할당된 메모리에 직접 값이 저장된다.
- int, double, boolean, char ...
객체 자료형 (참조 변수)
- 여러 데이터들이 복합적으로 모여있는 데이터
- 변수에 할당된 메모리에 데이터의 레퍼런스 (주소값)가 저장된다.
- String, System, ArrayList ...
- 사용자가 얼마든지 새로운 클래스(데이터 타입)를 만들 수 있으므로 무한하다.
선언 위치에 따른 분류
멤버변수 (필드)
- 클래스 영역에 선언된 변수. 클래스 변수, 인스턴스 변수를 통틀어 말한다.
- 객체가 가지고 있는 속성과 기능을 그 객체의 멤버라 하는데, 이 중 속성은 멤버변수라 하고, 기능은 메소드라고 한다.
클래스변수
- 인스턴스 변수는 인스턴스마다 고유값을 가지지만, 클래스 변수는 모든 인스턴스가 공통된 값을 공유하게 된다.
- 클래스 로딩 때 생성된다.(메모리에 딱 한 번만 올라간다.)
- public을 붙이면 같은 프로그램 내 어디든 접근할 수 있는 전역 변수가 된다.
- 인스턴스 변수의 접근법(new 연산자를 이용하여 인스턴스 생성)과 달리, 인스턴스 생성 없이 '클래스 이름.변수 이름'을 통해 접근 가능.
인스턴스 변수
참고%20%EB%A9%A4%EB%B2%84%EB%B3%80%EC%88%98%20(%ED%95%84%EB%93%9C),%EC%9D%80%20'%EB%A9%94%EC%86%8C%EB%93%9C'%EB%9D%BC%EA%B3%A0%20%EC%B9%AD%ED%95%A8.)