본문 바로가기
프로그래밍 언어/JAVA

[JAVA] 클래스와 객체 그리고 인스턴스

by 느링 2017. 8. 1.

객체 지향 언어

 

객체 지향이란, 현실(실세계)의 환경을 똑같이 컴퓨터로 표현하고자 만들어진 이론입니다.

객체 지향 프로그래밍은 사람들이 살아가는 시스템, 세계가 움직이는 시스템 등 현실의 환경을 그대로 컴퓨터로 표현하여 프로그래밍 하고자 만들어진 언어입니다.

 

② 객체(object)에 대한 개념

 

프로그램 내에서는 모든 것이 객체로 정의됩니다.

그렇다면 객체는 어떻게 만들어지는 것일까요?

 

객체 지향에서는 객체를 만들기 위해서는 '클래스'라는 도구를 제공합니다.

예를 들어 붕어빵이라는 객체를 만들기 위해서는 붕어빵 인 클래스라는 도구가 필요한 것입니다.

 

즉, 클래스는 객체를 만들기 위한 도구이자, 클래스가 있어야 객체를 만들 수 있습니다.

 

* 정의 *

객체 - 실제로 존재하는 것, 사물 또는 개념 (붕어빵)

   → 객체의 속성과 기능에 따라 다름

클래스 - 객체를 정의해 놓은 것, 객체를 생성하는 데 사용(붕어빵 틀, 도구)

 

③ 클래스(class)의 구조

 

객체는 속성과 기능으로 이루어져 있습니다. 마찬가지로 클래스도 속성과 기능으로 정의합니다.

속성은 변수로, 기능은 메소드로 정의합니다.

 

 

인스턴스(instance)

 

클래스 ---------------------> 인스턴스(객체)

          객체화(인스턴스화)

 

클래스로부터 객체를 만드는 과정을 클래스의 인스턴스화라고 하며, 클래스로부터 만들어지는 객체를 그 클래스의 인스턴스라고 합니다.

 

객체화(인스턴스화)할 때는 new라는 연산자를 이용해서 객체를 만들어줍니다.

 

ex) 클래스명 참조변수명 = new 클래스 명( );

Car car1 = new Car( ); -> 이 과정이 객체를 만드는 인스턴스화를 하는 과정입니다.

 

 

'프로그래밍 언어 > JAVA' 카테고리의 다른 글

[JAVA] 클래스의 구조 / this  (0) 2017.08.03
[JAVA] 오버 로딩 & 오버 라이딩  (0) 2017.08.02
[JAVA] 배열(array)  (0) 2017.07.27
[JAVA] break문과 continue문  (0) 2017.07.25
[JAVA] 반복문(2) for문  (0) 2017.07.24