Форум сайта python.su
Имеется несколько классов, все они наследуются от одного и того же класса из библиотеки, однако каждый из моих классов имеет два одинаковых метода, в которых в зависимости от класса меняется лишь пара строчек. Не уверен что такой подход правильный. Правильно ли будет наследовать эти классы от какого нибудь еще класса, который бы имел в себе только эти два метода? Как это выглядит описано в коде
class className1(ParentClass): def __init__(self): ... def close(self): some code def open(sels): some code class className2(ParentClass): def __init__(self): ... def close(self): some code def open(sels): some code
Офлайн
Yaroslam322Это не критерий наследования. Если у тебя есть класс, то это множество объектов, объединённых в этом множестве за счёт одинаковой структуры и одинакового поведения. Каждый объект является целостным, завершённым и отделённым от других объектов. Нет полуобъекта, третьобъекта и подобных. Поэтому надо смотреть не на набор методов или свойств, а на то, что это такое по своей сути. Оно является чем-то? Оно выражает какую-то определённую сущность? Только тогда ты можешь выделить это в отдельный класс. И когда у тебя получен такой класс, тогда ты его можешь встраивать в иерархию классов.
Правильно ли будет наследовать эти классы от какого нибудь еще класса, который бы имел в себе только эти два метода?
Офлайн