In general, the super keyword can be used to call overridden methods, access hidden fields or invoke a superclass's constructor. The one with super has greater flexibility The call chain for the methods can be intercepted and functionality injected. In fact, multiple inheritance is the only case where super() is of any use I would not recommend using it with classes using linear inheritance, where it's just useless overhead. As for chaining super::super, as i mentionned in the question, i have still to find an interesting use to that
For now, i only see it as a hack, but it was worth mentioning, if only for the differences with java (where you can't chain super). In the child template, i would like to include everything that was in the head block from the base (by calling {{ super()) }} and include some additional things, yet at the same time replace the title block within the super call. 'super' object has no attribute '__sklearn_tags__' This occurs when i invoke the fit method on the randomizedsearchcv object I'm currently learning about class inheritance in my java course and i don't understand when to use the super() call I found this example of code where super.variable is used
Extends e>) says that it's some type which is a subclass of e (in both cases e itself is okay.) so the constructor uses the Extends e form so it guarantees that when it fetches values from the collection, they will all be e or some subclass (i.e Super in generics is the opposite of extends Instead of saying the comparable's generic type has to be a subclass of t, it is saying it has to be a superclass of t The distinction is important because extends tells you what you can get out of a class (you get at least this, perhaps a subclass)
Super tells you what you can put into the class (at most this, perhaps a superclass)
OPEN