framework implementation using inner class, interface, class extends and super