Java methods are virtual by default. Comment. Java methods are virtual by default. The virtual methods are the methods of subclasses. They are invoked by a reference of their super class. The methods of the object are invoked when a method is invoked by using the reference to that object, hence they are virtual.
An approach followed by Java is to be able to override any method that one might need in the future. When a method is declared virtual, a call back hook is created. This greatly affects performance.