like below fixes the issue The bound is just a overly-broad because it's as close as you can express using Java's generics. What you really want is ; but there's no way to write that in Java's generics. There's also no way to write super T excluding T>. super T> is pretty much as specific as you can get given the way Java's generics work.
Makes it sense to create an object of a class which extends Service?
hope this fix your issue Although you can create an object of a class that extends Service but it doesn't make any programmatic sense. The fundamental reason to create an object is to use functionalities that class offer. In android paradigm, you would rather bind to a service to use its functionalities.