객체(Object)와 클래스(Class)

프로그래밍 언어에는 절차지향언어와 객체지향언어 두 가지가 있다.

객체(Object)와 클래스(Class)라는 개념은 후자인 객체지향언어에서 쓰이는 개념이다.

 

 

객체 지향 언어 (OOP) 

  • 프로그램 상에 취급하는 모든 대상을 객체로 생각하고, 그렇게 만들어진 객체를 중심으로 코드를 조립해가며 프로그램을 짜는 방법
  • 객체는 프로그램 내에서 문자열/ 숫자/ 배열 처럼 값으로 취급
  • 또한, 객체는 변수에 담거나 인수로 전달되거나 반환값으로 나오기도 하며, 객체 고유의 기능도 활용이 가능함

 

클래스 (Class) 

비슷한 특성을 가진 객체들을 그룹화 시키는 틀을 나타내는 추상적인 개념

 

  • 동일 클래스에 속한 객체들에 공통점을 준다.
  • 동일한 동작을 수행하며 동일한 속성(단, 객체마다 다른 값)을 가지게 된다.
  • 추상데이터형 구현 이외에도 상속성과 다형성 개념도 지원한다.

 

 

 

객체 (Object) 

클래스의 속성에 따라 생성될 수 있는 것

 

  • 자기자신을 포함하여 서로 연관된 변수와 함수의 데이터의 묶음
  • 어떤 정보를 표현하기 위해 할당되는 기억장소
  • 객체는 메모리 상에 존재하고, 프로그래밍 조작의 대상이 된다.

인스턴스 (Instance) 

클래스로부터 생성 가능한 객체가 실제 값을 갖고 구체적으로 실현된 것

 

인스턴스화

  • 프로그램에서 사용할 목적으로 클래스에 속하는 객체로써 생성되는 것
  • 객체를 다루기 위해 자기 자신 전용의 영역을 확보하는 것

인스턴스

  • 인스턴스화에 의해 만들어진 복제본

인스턴스의 생성방법

  • new라는 키워드를 사용하여 원하는 객체의 인스턴스 생성

 

JAVA언어로 객체, 클래스 관련 코드짜기

 

클래스

 

 

 

 

개념 참고 : 정보통신기술용어해설 http://www.ktword.co.kr/abbr_view.php?m_temp1=2654