Abstract class and Interface example