1. Static variables are used to refer to common properties of all objects of a class and only one copy is created in memory. Static methods can be called without creating an object.
2. Static blocks are used to initialize static variables and are executed before the main method.
3. The 'this' keyword refers to the current instance of an object and is used to differentiate between instance variables and local variables of the same name inside methods. It is also used for constructor chaining to invoke one constructor from another.