OOP (Object Oriented Programming)

Zino·2022년 12월 15일

Java

목록 보기
10/26
post-thumbnail

🔍 객체지향언어?

  • 객체(object : 객체, 물건) : 독립적으로 각각 구분해서 인식할 수 있는 모든 것.

  • 지향(Oriented ): 어떠한 것을 목표로 함.

  • 객체 지향: 독립적으로 각각 구분해서 인식 할 수 있도록 하는 것을 목표로 한다.

  • 언어(컴퓨터에서의 언어 : language:코드): 코딩방식

-> 객체 지향 언어 : 독립적으로 각각 구분해서 인식 할 수 있는 것을 목표로 하는 코딩 방식

객체 지향 언어

  • 현실 세계는 사물이나 개념처럼 독립되고 구분되는 각각의 객체로 이루어져 있으며, 발생하는 모든 사건들은 객체간의 상호작용이다.
    이 개념을 컴퓨터로 옮겨 놓아 만들어낸 것이 객체지향 언어이다.

💡 자바의 특징 = > 객체 지향 언어이다

🧐 현실에서 객체(Object)란 ?

  • 자신의 속성(값, data)(변수)과 기능(동작,행동)(메소드)이 다른 것들 과 구분되어 식별 가능한 것

    ex) 속성 : 이름, 나이, 생년월일, 국적, 키, 몸무게 , 시력, 주민번호
    ex) 기능 : 잠을 잔다, 밥을 먹는다, 출근한다, 퇴근한다, 운전한다…

🧐 자바에서 객체(Object)란 ?

  • 클래스에 정의된 내용대로 new 연산자를 통해 메모리 영역에 생성된 것

    💡 new 연산자를 통해 메모리 영역에 (Heap) 생성된 배열도 객체이다!!

🤙🏻 객체 지향 3 + 1대 특징

  • 캡슐화 (Encapsulation)
    보호역할 : 외부로 부터의 접근을 막는다(정보 은닉)
  • 상속 (Inheritance)
    부모님이 자식에게 물려줌(속성,기능) + 자식이 이미 가지고 있는 것

  • 다형성 (Polymorphism)
    다양한 형태를 지니는 성질

  • + 추상화 (Abstraction)
    구체적이지 X


💬 객체 메모리 구조


🪴 객체(Instance)의 할당

instance : 컴퓨터 안에서 말하는 객체

  • new 연산자와 생성자를 사용하여 객체 생성 시 Heap 메모리 영역에 서로 다른 자료형의 데이터가 연속으로 나열/할당된 객체 공간


📖 객체 지향 언어 – 종합 정리

  • 현실에 존재하는 독립적이면서 하나로 취급되는 사물이나 개념으로
    객체 지향 언어에서 객체의 개념은 클래스에 정의된 내용대로 메모리에 할당된 결과물(Object)

profile
Willingness to be a fool!

0개의 댓글