I'm implementing time sliced self processing queues, and this is the only instance of the backing queue for which I need to wrap instead of extending the class. I'm fine with methods being final, but I cannot understand why the class itself cannot be extended in this specific case?