Skip to main content

Featured Post

Top 10 Advance Java Interview questions?

Top 10 Advance Java Interview questions?   What are the differences between abstract classes and interfaces in Java? What is the difference between ArrayList and LinkedList in Java? What is the purpose of the finalize() method in Java? What is polymorphism in Java and how is it achieved? What are the different types of inner classes in Java? What is the difference between static and non-static methods in Java? What are the different types of exceptions in Java and how do they differ? What is the difference between checked and unchecked exceptions in Java? How does Java handle multithreading and synchronization? What are the different types of JDBC drivers in Java and how do they differ?

Python Class Method Decorator @classmethod

 Python Class Method Decorator @classmethod

In Python, the @classmetho decorator is used to declare a method in the class as a class method that can be called using ClassName.MethodName(). The class method can also be called using an object of the class.

The @classmethod is an alternative of the classmethod() function. It is recommended to use the @classmethod decorator instead of the function because it is just a syntactic sugar.

@classmethod Characteristics

  • Declares a class method.
  • The first parameter must be cls, which can be used to access class attributes.
  • The class method can only access the class attributes but not the instance attributes.
  • The class method can be called using ClassName.MethodName() and also using object.
  • It can return an object of the class.

The following example declares a class method.

class Student:
name = 'unknown' # class attribute
def __init__(self):
self.age = 20 # instance attribute

@classmethod
def tostring(cls):
print('Student Class Attributes: name=',cls.name)

Above, the Student class contains a class attribute name and an instance attribute age. The tostring() method is decorated with the @classmethod decorator that makes it a class method, which can be called using the Student.tostring(). Note that the first parameter of any class method must be cls that can be used to access the class's attributes. You can give any name to the first parameter instead of cls.

Comments

Popular posts from this blog

WHAT ARE NEURAL NETWORKS? | Comingfly

WHAT ARE NEURAL NETWORKS ? Neural Networks the process of machine learning are neural networks. These are brain-inspired networks of interconnected layers of algorithms, called neurons, that feed data into each other, and which can be trained to carry out specific tasks by modifying the importance attributed to input data as it passes between the layers. During training of these neural networks, the weights attached to different inputs will continue to be varied until the output from the neural network is very close to what is desired, at which point the network will have 'learned' how to carry out a particular task. A subset of machine learning is deep learning, where neural networks are expanded into sprawling networks with a huge number of layers that are trained using massive amounts of data. It is these deep neural networks that have fueled the current leap forward in the ability of computers to carry out task like speech recognition and computer vision. T here are vario...

What is Go Language ? | Comingfly

What is Go Language ? What Go Language? :- v    Go is a modern, general purpose language. v    A new ,Open source Programming language. v    Concurrent , Builds fast at scale. v    Go language is very fast. v    Garbage-Collected. v    Lightweight syntax. v    Simple type system. v    Productive. v    Simple. v    Fun History of Go language :- Go language developed by Rob Pike   and Ken Thompson. More than 250 contributors join the project.   Design began late in 2007.   Become open source in 2009.   Version is 1.2.2. Feature of Go language ? v   In the current world, languages don't help enough. v   Computers fast but software construction slow. v   Efficiency. v   Safety. v   Speed. v   Concurrency. v   Scalability. v   Fast development cycle. v   No surprises. v   Multi-core Why Developed a Language ? Google has bi...

What is Java? | Comingfly

What is Java? Developed by Sun Microsystems in the mid-1990s, Java was originally built to be a high-level and object-oriented programming language that looks and feels similar to C++. Along with being extremely popular, Java can implement a wide variety of algorithms, which are very useful to the machine learning community. Java is regarded as one of the most secure programming languages, largely due to its use of bytecode and sandboxes. Java manages to harness much of the power of C++ while overcoming its security issues and overall complexity. But with all of its improvements over C++, Java has a reputation for being slower than many other programming languages. Additionally, as of 2019, Java has implemented commercial licensing for certain business applications, which can be costly.