One of the key parts of object programming is encapsulation, which involves packaging variables and related functions into a single, simple-to-use object: the instance of a class. A concept related to this is data hiding, which is to hide the implementation details of a class. In this way the user interface of this class is clean and more intushable.
The class methods are different. These methods are called directly by the class that is passed as the CLS parameter within the method. Class methods are marked with a @classmethod decorator. Generally, these methods are used to instantiate a new class instance, passing different parameters than those required by the constructor.