static |
Only nested classes can be static. |
Belongs to the class (not object), can be invoked without the need for creating an instance of a class, can access static data member and can change the value of it. |
Can be used to refer the common property of all objects, gets memory only once in class area. |
final |
Cannot be subclassed (inherited). |
Cannot be overridden or hidden by subclasses. |
Can only be initialized once. |
abstract |
Abstract classes cannot be instantiated, but they can be subclassed. |
A method that is declared without an implementation. If a class includes abstract methods, then the class itself must be declared abstract. |
(._.) |
synchronized |
Only one thread may enter the block. |
If an object is visible to more than one thread, all reads or writes to that object’s variables are done through synchronized methods. |
Intrinsic Locks and Synchronization |
volatile |
╮(╯▽╰)╭ |
volatile |
Every thread accessing a volatile field will read its current value before continuing. |