§1.3.1.(i) Dynamic binding of constructors

When creating a role instance using new not only the type to instantiate is bound dynamically (cf. §1.3.1.(e)), but also the constructor to invoke is dynamically bound in accordance to the concrete type.
Within role constructors all this(..) and super(..) calls are bound statically with respect to explicit inheritance and dynamically with respect to implicit inheritance. This means the target role name is determined statically, but using that name the suitable role type is determined using dynamic binding.
See also §2.5.(a) on using constructors of abstract role classes.