Virtual methods allow object oriented languages to express polymorphism.This means that a derived class can write a method with the same signature as a method in its base class, and the bas class will call the derived class’s method.By default in java, all methods are virtual.