달력

7

« 2019/7 »



 

 

생성자와 소멸자

자바, C++ 동일하게 파이쎤에서도 클래스 생성시 초기화작업를 위해 생성자 메소드와 메모리 해제등의 종료작업을 위해 소멸자 메소드를 지원하고 있습니다.

 

 

 

생성자(Constructor)

·         초기자(initializer)라고도 합니다.

·         생성시 초기화 작업을 수행합니다.

·         인스턴스 객체가 생성될 자동으로 호출(객체를 만들 항상 실행됩니다)됩니다.

·         클래스로부터 객체를 만들 , 인스턴스 변수를 초기화하거나 객체의 초기상태를 만들기 위한 문장들을 실행하는 곳입니다.

·         Python에서 클래스 생성자(Constructor) 실제 런타임 엔진 내부에서 실행되는데, 생성자(Constructor) 실행 도중 클래스 안에 Initializer 있는지 체크하여 만약 있으면 Initializer 호출하여 객체의 변수 등을 초기화합니다.

·         __init__() 라는 이름을 가집니다.

·         self 인자가 반드시 첫번째 인자로 정의되어야 합니다.

 

 

 __init__() 생성자를 보면, width height라는 입력 파라미터를 받아 각각 self.width self.height라는 인스턴스 변수에 할당하여 객체 내에서 계속 사용할 있도록 설정하고 있습니다.

def __init__(self, width, height):

    self.width = width

    self.height = height

 

    # private 변수 __size

    self.__size = width * height

 

 

 

 

 

 

소멸자

·         객체가 소멸 (메모리에서 해제; Garbage Collection ) 자동으로 불리어지는 메소드

·         소멸시 종료 작업을 수행합니다.

·         인스턴스 객체의 참조 카운터가 '0' 호출됩니다.

·         파이썬에서는 메모리나 기타 자원들의 해제가 자동으로 되기 때문에 개발자가 특별히 작성하지 않아도 되는 메소드입니다.

·         self 인자가 정의되어야 합니다.

·         __del__()

 

 


'Development > Python' 카테고리의 다른 글

람다 함수(lambda) 장단점  (0) 2019.08.01
PEP 8 파이썬 코딩 스타일  (0) 2019.07.16
생성자와 소멸자  (0) 2019.07.10
상속관계에서 생성자 호출  (0) 2019.07.10
while문  (0) 2019.07.04
2차원 좌표값, 2차원 좌표값 예시  (0) 2019.06.27
Posted by codedragon codedragon

댓글을 달아 주세요


 

 

상속관계에서 생성자 호출

·       서브 클래스의 생성자는 슈퍼 클래스의 생성자를 자동으로 호출하지 않습니다.

·       서브 클래스의 생성자에서 슈퍼 클래스의 생성자를 명시적으로 호출해야 합니다.

·       서브 클래스에 생성자가 정의되어 있지 않은 경우에는 슈퍼 클래스의 생성자가 호출됩니다.

 


'Development > Python' 카테고리의 다른 글

PEP 8 파이썬 코딩 스타일  (0) 2019.07.16
생성자와 소멸자  (0) 2019.07.10
상속관계에서 생성자 호출  (0) 2019.07.10
while문  (0) 2019.07.04
2차원 좌표값, 2차원 좌표값 예시  (0) 2019.06.27
Python 모듈의 종류  (0) 2019.06.19
Posted by codedragon codedragon

댓글을 달아 주세요


 

 

PC 공인인증서 복사

 

공인인증서가 저장된 경로

C:\Users\[로그인명]\AppData\LocalLow\NPKI\

 

 

NPKI 폴더를 USB 복사하면 다른 곳에서도 공인인증서를 PC에서와 동일하게 사용할 있습니다.



 


'Security > InformationSecurity' 카테고리의 다른 글

국가사이버안보전략  (0) 2019.08.06
IEEE(Institute of Electrical and Electronics Engineers)  (0) 2019.07.22
PC의 공인인증서 복사  (0) 2019.07.10
DuckDuckGo(DDG)  (0) 2019.07.01
World Technolog Award  (0) 2019.06.19
개인정보보호를 위한 관리적 조치  (0) 2019.06.13
Posted by codedragon codedragon

댓글을 달아 주세요