У меня есть класс и 2 разных дочерних типа. Я хочу выполнить оба типа дочерних классов одновременно. Я проектирую их из того же родительского типа, поскольку они будут использовать одни и те же метаданные. Является ли этот код правильным подходом?
class parent():
def __init__(self, val = 'type_A', local_val = 10 ):
self.type = val
self.data = local_val
self.generic_val = -356
def __run_parent__(self):
print('Run parent')
def process(self):
if self.type == 'type_A':
self.get_type_A_data()
elif self.type == 'mixed':
# ----------- Here I am creating 2 different Objects -------
s = type_A(200)
c = type_B(300)
s.get_type_A_data()
c.get_type_B_data()
self.__run_parent__()
class type_A(parent):
def __init__(self, val):
parent.__init__(self, 'type_A', val)
print(self.type)
def get_type_A_data(self):
print('type_A Data:', self.data, 'generic_val:', self.generic_val)
class type_B(parent):
def __init__(self, val):
parent.__init__(self, 'mixed', val)
print(self.type)
def get_type_B_data(self):
print('type_B Data', self.data, 'generic_val:', self.generic_val)
i = parent('mixed')
i.process()