클래스
1.클래스
: 객체를 정의한 것 (설계도) / 설계도(클래스)를 이용해서 자동차(객체)를 만든다고 이해하면 쉽다.
객체지향에서는 유형뿐만아니라 무형(논리,개념 등)도 객체로 인정한다.
: 프로그래밍언어 관점에서 보자면 클래스는 변수(데이터)와 함수를 하나의 클래스에 정의한 것이다.
-클래스의 인스턴스화 : 클래스로부터 객체를 만드는 과정
-인스턴스 : 어떤 클래스로부터 만들어진 객체를 그 클래스의 인스턴스라고 한다.
-속성 : 멤버변수, 특성, 필드, 상태 -> 멤버변수
-기능 : 메서드, 함수, 행위 -> 메서드
-인스턴스의 생성과 사용
: 클래명 변수명; // 객체를 참조하기 위한 참조변수를 선언
변수명 = new 클래스명(); // 객체 생성 후, 객체의 주소를 참조변수에 저장
-> 연산자 new에 의해 클리스의 인스턴스가 메모리의 빈 공간에 생성. 이 때, 멤버변수는 각 자료형에 해당하는 기본값으로 초기화 됨. (참조형:null, boolean:false, int:0 ....)
-> 인스턴스는 참조변수를 통해서만 다룰 수 있고, 참조변수의 타입은 인스턴스의 타입과 일치해야함.
-객체 배열 : 많은 수의 객체를 다뤄야할 때 이용. 객체 배열 안에 객체의 주소가 저장. <- 참조 변수들을 하나로 묶은 참조변수 배열.
객체 배열을 생성하는 것은, 객체를 다루기 위한 참조변수들이 만들어진 것 뿐 객체가 저장된 것 x .
Ex) Car [ ] carArr = new Car[3]; <- 참조변수 배열 (객체 배열)을 생성
carArr[0] = new Car(); <- 객체를 생성해서 배열의 각 요소에 저장.
carArr[1] = new Car();