728x90
함수와 메소드 차이
사실 지금까지 배우기만 배웠고 제대로 몰랐다 오늘 알게되었다. 큰 수확이다 !
'.' 으로 불러온것은 메서드 , 클래스 내부의 함수는
__init__(초기화) 메서드는 클래스를 인스턴스로 만들때 항상 최초 1번 실행되는 함수
생성자 이름으로 불리며 인스턴스로 객체로 만들때 각 객체에 최초값으로 넣어줄 값을 설정해주는 역할을 함
클래스에 존재하는 변수 두 종류가있다.
클래스변수, 인스턴스 변수
인스턴스 변수는 클래스 변수와 다르게 독립적으로 작동
class ExampleClass:
var_1 = 1
def __init__(self):
self.var_2 = 1
.var_1 은 클래스에서 직접 선언된 클래스 변수
self.var_2 는 인스턴스 변수
클래스변수는 클래스 자체에 소속된 변수이기 때문에 이 클래스로 만든 인스턴스가 모두 공유하는 값이다.
인스턴스 내부의 의 값은 . 을 통해 접근한다.
인스턴스변수는 항상 self. 를 달고 있다.
이것으로 클래스 변수와 구분하며 각 인스턴스에게 독립적으로 값을 가질 수 있도록하기 위해 존재하는것
self. 덕분에 클래스변수와 마찬가지로 인스턴스 변수도 클래스 내부에서 전역으로 존재할 수 있게 된다.
------------이어서
728x90