I am unable to understand why there are two similar functionality feature available in SV? Interface Class and Abstract Class and what is best usecase? Generally I prefer abstract class where I want env to follow certain implementation but then question arise, why not interface class? I am kind of unclear about each of these. Your input, would help.