python/Data Science
(macOS)[python] Class : public, protected, private, inheritance
jinozpersona
2020. 3. 2. 15:24
1. class 생성 : Naming
public
# public
class Naming:
def __init__(self,head,tail):
self.head = head
self.tail = tail
def get_name(self,head_name,tail_name):
self.head = head_name
self.tail = tail_name
def get_info(self):
print(self.head, self.tail)
def __del__(self):
print('Name object is deleted')
# Use class
object = Naming(head,tail)
# Use delete
del object
protected : single underscore
# protected
class Naming:
def __init__(self,head,tail):
self._head = head
self._tail = tail
def get_name(self,head_name,tail_name):
self._head = head_name
self._tail = tail_name
def _set_name(self,head_name,tail_name):
self._head = head_name
self._tail = tail_name
def get_info(self):
print(self._head, self._tail)
def __del__(self):
print('Name object is deleted')
private : double underscore
# private
class Naming:
def __init__(self,head,tail):
self.__head = head
self.__tail = tail
def get_name(self,head_name,tail_name):
self.__head = head_name
self.__tail = tail_name
def __set_name(self,head_name,tail_name):
self.__head = head_name
self.__tail = tail_name
def get_info(self):
print(self.__head, self__.tail)
def __del__(self):
print('Name object is deleted')
2. class inheritance(상속)
import os
class MakeNaming(NamingDir):
def make_name(self,head_name,tail_name):
self.head = head_name
self.tail = tail_name
반응형