본문 바로가기
[study]이론정리/JAVA(eclipse)

java 5일차 _ 06. 객체 및 클래스

by yoon9i 2024. 3. 14.

< 객체 및 클래스 >

1) 객체( Object ) ?
- 주체( subject ) 가 눈으로 보여지는 사물 의미.
ex) 
모니터 객체, 노트북 객체, 책상 객체, 학생 객체, ...

2) 객체( object )의 구성요소 2가지
ex) 학생객체

가. 속성
 - 객체를 표현할 수 있는 특성
ex) 학번, 이름, 전화번호, 주소, ....

나. 동작(기능)
- 객체의 행위.
ex) 등교하기, 공부하기, 하교하기, ...

3) 객체지향 프로그래밍( Object Oriented Programming: OOP )
- 현실세계에 존재하는 속성과 동작 구성요소로 되어있는 
  객체( Object ) 라는 개념을 이용해서 프로그래밍하는 방법론.
- 대표적 언어: 자바

4) 자바에서는 객체( Object ) 를 어떻게 표현할까? ( * )

현실세계                OOP                   가상세계(자바 프로그래밍)
----------                                         --------------------------------
고양이 객체                        --->      클래스로 표현 ( Cat 클래스 )
- 속성: 이름, 나이, 성별,...      --->      변수로 표현 ( 인스턴스 변수 )
- 동작(기능): 먹기, 뛰기,...      --->      메서드로 표현

5) 만들어진 클래스 사용할려면?
- 반드시 클래스를 사용할려면 객체생성해야 된다. ( * )
- 객체생성은 new 키워드 이용
문법:
클래스명 변수명 = new 클래스명( ); ( * )
ex) Cat            c     = new Cat( );


main( ) {

   Cat c = new Cat( );

}

1번: Cat c 수행
- c 가 로컬변수 ( stack 저장 )
         참조변수 ( 주소값 저장, 참조하면 Cat 이 있음 )
         Cat 타입의 변수

2번: new Cat 수행
- heap 메모리에 Cat 을 생성.
- heap 메모리에 생성된 Cat을 인스턴스( instance ) 라고 부른다.
  인스턴스안에 있는 구성요소인 변수와 메서드를 
  멤버( member )라고 부른다.
- heap 메모리에 생성된 변수를 인스턴스 변수( 멤버변수 )라고 한다.
- heap 메모리에 생성된 메서드를 인스턴스 메서드( 멤버메서드 )라고 한다.

3번: Cat( );
- 생성자 호출하는 코드이다.

4번: =
- heap 메모리에 생성된 Cat 인스턴스 주소값을
  c 에 할당한다.
- 이후에 Cat 인스턴스의 구성요소( 변수, 메서드 ) 를 접근하기 위해서는
  c 참조변수를 이용한다.
  방법: c.변수 / c.메서드( )