When a child class overrides a method or hides a field, it sometimes still needs the parent's version. super refers to the parent part of the current object, so you can call super.describe() or the parent constructor with super(...). Use it when the child extends the parent's behaviour instead of replacing it fully. If the parent has only constructors with parameters, the child must call super(...) explicitly or the code does not compile.