I am working on a Java project and want to understand the source code before implementing mine into it. The problem im facing is, how can the source code uses the abstract method from an interface without actually overriding it? At first, I came to this statement: DeviceService deviceService = context.deviceService(); It is using ‘context’ to call the method deviceService().