본문 바로가기
  • 문과생의 백엔드 개발자 성장기
|Playdata_study/Python

210426_클래스1

by 케리's 2021. 4. 26.

OOP (Object Oriented Programming)란?

  객체 지향 프로그램을 말한다.  

  데이터 처리를 하는 메소드들을 하나의 프로그램으로 설계해서 연동하는 객체 (Object)를 중심으로

  프로그램을 짜는 언어를 말한다.
  python 은 대화적이고(Interactive) , 인터 프리팅(interpreted) 되는 객체 지향(object-oriented) 프로그래밍 언어이다.  
  파이썬은 모든 객체이다. 



클래스와 객체란?

 - 클래스는 객체지향 프로그램의 기본적인 사용자 정의 데이터형 (user define data type)이라고 할 수 있다.
 - 클래스는 객체를 정의한 것으로 실세계에서 존재하는 사물이나 개념의 속성과 기능을 모델링해서 추상화 시키는 

   과정을 말한다. 
 - 객체는 자신 고유의 속성 (attribute) 을 가지며 클래스에서 정의한 행위 (behavior)를 수행할 수 있다.
 - 객체의 행위는 클래스에 정의된 행위에 대한 정의를 공유함으로써 메모리를 경제적으로 사용한다.
 - 객체는 클래스의 인스턴스이며 정의된 클래스를 사용해서 실제로 메모리에 생성되어 메모리에 로딩된 상태를 말한       다. 
 - 객체는 클래스의 타입으로 선언됬을 때를 의미하는 것이고 그 객체가 메모리에 할당되어 실제 사용될 때 인스턴스라       고 한다.  (* 객체가 생성되어야 인스턴스가 됨) 

ex) 
  그림판의 메뉴를 생각해보자. 동그라미를 메뉴에서 선택해서 작업화면에 동그라미 객체를 그려낸다.
  이때 정해진 클래스(동그라미)의 여러개의 객체를 (Object) 생성하게 되는데 동그라미 객체들을 인스턴스 한다 라고

  말한다. 

  객체 = 속성(Attributes) + 행위(behaviors) = 속성 + 기능
  클래스 = 변수(Variable) + 메소드 (Methods)  = 변수 + 메소드(기능) 

def Test():
      pass 

class My():
      def Test(selp):
           pass 

  객체는 멤버 변수를 가지고 있으면서 그들의 동작을 수행하는 함수들을 가지게 되는데 메소드라고 부른다.
  메소드는 객체를 사용하기 위해 필요한 모든 이벤트들을 처리하는 함수이다. 

ex)

  동그라미 → 속성, 행위(객체) → 코드(사용자자료형)=클래스 → 동그라미 그린다. 객체생성 

   자동차 →  속성 (색, 가격, 문갯수, 바퀴수 등)                → 클래스  → 객체생성 
                 행위 (연비, 속도, 출력, 정지, 출발, 대기 주차 등)  


      ** 속성을 바꿀때 행위를 이용한다. 

'|Playdata_study > Python' 카테고리의 다른 글

210428_클래스3  (0) 2021.04.28
210427_클래스 2  (0) 2021.04.27
210426_함수2  (0) 2021.04.26
210423_함수1  (0) 2021.04.24
210423_제어문2 (흐름 제어문)  (0) 2021.04.24

댓글