from typing import Self
from abc import ABC, abstractmethod
class SerializableObject(ABC):
@abstractmethod
def serialize(self) -> bytes:
pass
@classmethod
@abstractmethod
def deserialize() -> Self:
pass
class NumericObject(SerializableObject):
def serialize(self) -> bytes:
return super().serialize()
@classmethod
def deserialize() -> Self:
return super().deserialize()
no = NumericObject()
# Как сделать, чтобы не было возможности вызвать метод через инстанс?
no.deserialize()
# А только через класс
NumericObject.deserialize()