객체지향과 Class

SANGKU OH·2020년 7월 1일
post-thumbnail

주의:⚡️파이썬은 객체지향 프로그래밍을 할 수 있는 클래스 (class)를 지원!⚡️

객체 지향

데이터를 정의하고, 함수를 이용해서 데이터를 변형하여 원하는 결과를 얻는 형태
프로그래밍 방식을 절차지향 프로그래밍이라 합니다.

객체 지향 프로그래밍
먼저 객체를 정의합니다.
객체는 멤버 변수(데이터)와 멤버 메소드(자신의 상태(데이터)를 변경하는 함수)로 구성!
객체들이 서로 상호작용하여 객체의 상태가 바뀌어 원하는 결과를 얻는 프로그램 방식이
객체지향 프로그래밍입니다.


같은 결과가 나왔다!

🤔class?
프로그램이 실행되었을때 생성되는 객체가 어떤 멤버변수와 메소드를 가지는지 정의해둔 것!

🤔객체(object)?
개념적인 말로 실제 만질 수 있는 사물, 추상적인 개념, class의 instance 등을 인식할 수 있는 모든 것을 통칭!

🤔instance??
class의 정의로부터 실제 객체를 생성한 것!
객체지향 프로그래밍에서 instance와 object라는 단어는 일반적으로 혼용해서 씁니다.😎

Class

python에서 class를 정의하자!

class의 선언은 class로 시작해서 뒤에 이름을 적고 콜론(:)으로 행을 마친다!
그 뒤로 class의 멤버와 메소드들은 들여쓰기를 해서 입력한다.
class의 끝은 들여쓰기가 class와 같은 레벨이 나오는 곳에서 끝!

메소드는 일반적인 함수와 같은 형식으로 작성! But! 한가지 차이점이 있다!
함수의 인자중 첫번째는 반드시 self를 써야한다! 이 인자는 메소드를 호출할 때는 없는 것 처럼 사용!

Class를 사용하자!

self = class 자신을 가리키는 것

class는 x = MyClass()와 같이 객체를 instance로 만들어 사용한다!

class는 x.print("Hello, pyhton")와 같이 객체 변수에 마침표(.)를 사용해서 멤버를 사용한다!

클래스를 생성할 때 필요한 값을 줄 수 있는 생성자로 init() 메소드가 제공됩니다.
아래와 같이 활용이 가능!

profile
Prof.Google을 통해 필요한 정보를 이 곳에 insert 🐸

0개의 댓글