Abstract : Used to declare a class that can’t be instantiated or a method must be implemented by a non abstract modifier.
Extends : for inheritance
final : Impossible to extend a class , override a method and reinitialize a variable.
implements : used to indicate the interfaces that class will implement.
native : Used to modify method declaration.
static : Makes a method or variable belongs to a class as opposed to an instance. Method need not to be instantiated for it to called.