클래스의 정의

윤주영·2024년 10월 23일

클래스의 정의

클래스 == 데이터 + 함수

클래스   - 1설계도
            - 2 데이터 + 함수
            - 3 사용자 정의 타입

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

클래스의 정의(2)

사용자 정의 타입 - 원하는 타입을 직접 만들 수 있다.
자바에는 시간타입이 없다.

int hour; (시간)
int minute; (분)
int second; (초)
=> Time t = new Time();
▼ 변수를 선언함
int hour1,hour2,hour3;
int minute1,minute2,minute3;
int second1,second2,second3;
=> Time t1 = new Time();
    Time t2 = new Time();
    Time t3 = new Time();
▼ 배열을 이용
int hour = new int[3]; // 시간끼리 묶음
int minute = new int[3]; // 분끼리 묶음
int second = new int[3]; // 초끼리 묶음
=> 객체배열
    Time[] t = new Time[3];
    t[0] = new Tiem();
    t[1] = new Tiem();
    t[2] = new Tiem();
▼ Time이라는 클래스를 정의함 (사용정의타입)
class Time{
    int hour;
    int minute;
    int second;
}

선언위치 변수 종류

class Variables {   // 클래스 영역 (선언문만 가능)
  int iv;    //인스턴스 변수
  static int cv;    //클래스 변수(static변수, 공유변수)

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

영역 - 1. 클래스영역 -iv,cv(static+iv)
         2. 메서드영역 -lv

변수의 종류선언위치생성시기
클래스 변수클래스영역클래스가 메모리에 올라갈 때
인스턴스 변수클래스영역인스턴스가 생성되었을 때
지역변수클래스 영역 이외의 영역
(메서드,생성자,초기화 블럭 내부)
변수선언문이 수행되었을 때
profile
반갑습니다.

0개의 댓글