A static
function can only access static
variables, and cannot access non-static
variables.
A static variable/function can be referenced without any instantiation (i.e., no instance is created).
Need to be initialized before use.
Python also have static method for OOP
Decorator Pattern