본문 바로가기

혼자해보는 공부

[17. 객체 배열 및 클래스정의, 변수의 종류]

728x90

객체 배열 == 참조변수 배열

Tv tv1, tv2, tv3; (배열화)-> Tv tvArr = new Tv[3];

길이가 3인 Tv 타입의 참조변수 배열

객체배열의 초기화
tvArr[0] = new Tv();
tvArr[1] = new Tv();
tvArr[2] = new Tv();

이렇게 바꿀 수 있다.
Tv[] tvArr = {new Tv(), new Tv(), new Tv()} ;

참조변수 여러개를 묶어서 하나의 배열로 만든것이다.








클래스 == 데이터 + 함수

1. 변수 하나의 데이터를 저장할 수 있는 공간
2. 배열 같은 종류의 여러 데이터를 하나로 저장할 수 있는 공간
3. 구조체 서로 관련된 여러 데이터(종류 관계X)를 하나로 저장할 수 있는 공간 (int,char 다른변수도 가능)
4. 클래서 데이터와 함수의 결합(구조체+함수)


클래스의 정의

사용자 정의 타입 - 원하는 타입을 직접 만들 수 있다.
int hour;
int minute;
int second;  < - > 타입 생성시 Time t = new Time(); 로 작성할 수 있다. 
시간의 저장을 위한 변수 생성

class Time{
int hour;
int minute;
int second;
}

시간 저장을 위한 타입을 직접 생성

묶은 타입은 코드가 덜 복잡해지고 유지보수가 편해지는 장점이 있음


 


 



변수의 종류

int iv // 인스턴스 변수 
static int cv // 클래스 변수(static변수, 공유변수)

void method() //메서드 영역
{
int lv = 0; // 지역 변수
}

1. 클래스 영역(선언문만 가능) - 인스턴수 변수 iv ,클래스 변수 cv
2. 메서드 영역(메서드 선언) - 지역 변수 lv


객체를 생성할때 변화가 필요한 개별속성들은 '인스턴스 변수'로 사용하고 변화가 필요없는 공통속성들은 '클래스 변수'로 생성한다.


728x90
댓글