[Java] OOP(1) - 객체지향 프로그래밍

sj·2022년 11월 21일

Java

목록 보기
2/7

OOP란?

  • OOP: Object-Oriented Programming
  • 프로그래밍 패러다임 중 하나
  • 프로그램을 구성하는 기본 요소를 객체로 보려는 노력
  • OOP에서 프로그램이란?
    • 상호작용하는 객체들의 집합
    • 절차적 프로그래밍에서의 프로그램은 실행할 명령어의 목록
  • 절차적 프로그래밍
    • 기준은 기계
    • 따라서 매우 객관적
  • 객체지향 프로그래밍
    • 기준은 사람
    • 따라서 주관적

어떤 프로그램이라도 최종적으로 절차적으로 돈다.

  • 객체 지향 프로그래밍은 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 독립된 단위, 즉 "객체"들의 모임으로 파악하고자 하는 것이다. 각각의 객체는 메시지 를 주고받고, 데이터를 처리할 수 있다. (협력)
  • 객체 지향 프로그래밍은 프로그램을 유연하고 변경이 용이하게 만들기 때문에 대규모 소프트웨어 개발에 많이 사용된다.

Object(객체) vs. Instance(인스턴스)

클래스로부터 객체를 만드는 과정을 클래스의 인스턴스화(instantiate)라고 하며, 어떤 클래스로부터 만들어진 객체를 그 클래스의 인스턴스(instance)라고 한다. 객체는 모든 인스턴스를 대표하는 포괄적인 의미를 갖고 있으며, 인스턴스는 어떤 클래스로부터 만들어진 것인지를 강조하는 보다 구체적인 의미를 갖고 있다.

클래스인스턴스화인스턴스(객체)클래스\xrightarrow{인스턴스화}인스턴스(객체)

0개의 댓글