There are some concepts that we recall here quickly.
There are 4 main features of the Object-oriented Programming concept in any programing language.
- Inheritance = Parent-child concept to share the properties & methods between each other
- Abstraction = Some data are hidden always for users though those data are important to run other functions. Like in mobile devices, we can only see a few settings. Rest all services runs in the background.
- Encapsulation = We can define properties & methods as Public, Private & Protected
- Polymorphism = Methods behave differently at different places. Like Aparichit movie. The Nandi is Remo but he behaves differently in different areas :))

To call the static methods we do not require an object. We can call any method outside of the class defined as static by classname::method name(). In the same class, we can call that static method using self::method name()
So we can define only those methods as static which we can use without object like Password validation.