Class Method
To define static method, @classmethod decorator is used, method defined under @classmethod decorator are class method.
#program to define class method
class Employee_data :
@classmethod
def operation(cls):
print("this is a class method")
- Class Method take "cls" as a default parameter.
#program
class Employee_data :
@classmethod
def operation(cls):
cls.a = 10
cls.b = 20
return (cls.a + cls.b)
- Class Method perform operation on Class variables.
#program
class Employee_data :
@classmethod
def operation(cls):
cls.a = 10
cls.b = 20
return (cls.a + cls.b)
@classmethod
def display_operation(cls):
print(cls.operation())
- Class name can be called by class name and object as well.
#program
class Employee_data :
@classmethod
def operation(cls):
cls.a = 10
cls.b = 20
return (cls.a + cls.b)
@classmethod
def display_operation(cls):
print("return is :", cls.operation())
todo = Employee_data()
todo.display_operation() # calling based on object name
Employee_data.display_operation() # calling based on class name
#Output
return is : 30
return is : 30
- Class Method gets memory at class loading time.
#program
class Employee_data :
@classmethod
def operation(cls):
cls.a = 10
cls.b = 20
return (cls.a + cls.b)
@classmethod
def display_operation(cls):
print("return is :", cls.operation())
Employee_data.display_operation() # calling based on class name before creating object
todo = Employee_data()
todo.display_operation() # calling based on object name
#Output
return is : 30
return is : 30
- Class Method perform operation on Static variables as well.
#program
class Employee_data :
website = "AETies"
@classmethod
def operation(cls):
cls.a = 10
cls.b = 20
return (cls.a + cls.b)
@classmethod
def display_operation(cls):
print("return is :", cls.operation())
print("website is :", cls.website) #calling static variable
Employee_data.display_operation() # calling based on class name before creating object
todo = Employee_data()
todo.display_operation() # calling based on object name
#Output
return is : 30
website is : AETies
return is : 30
website is : AETies
Comments
Post a Comment