Class or Static Variables in Python
All objects share class or static variables. An instance or non-static variables are different for different objects (every object has a copy). For example, let a Computer Science Student be represented by a class CSStudent. The class may have a static variable whose value is “cse” for all objects. And class may also have non-static members like name and roll.
In C++ and Java, we can use static keywords to make a variable a class variable. The variables which don’t have a preceding static keyword are instance variables. See this for the Java example and this for the C++ example.
Features of Static Variables
- Static variables are allocated memory once when the object for the class is created for the first time.
- Static variables are created outside of methods but inside a class
- Static variables can be accessed through a class but not directly with an instance.
- Static variables behavior doesn’t change for every object.
The Python approach is simple; it doesn’t require a static keyword.
Note: All variables which are assigned a value in the class declaration are class variables. And variables that are assigned values inside methods are instance variables.
cse cse Geek Nerd 1 2 cse ece cse ece mech