Hi Nabila,
Instance variables are inherited but they are not polymorphic. Polymorphic invocations are only for overridden instance methods. Not for variables, not for static methods.
This is explained in K&B, Chapt 2. Polymorphism, last para.
So since HelSte hs is a reference to parent type,
hs.nat will be dub.
this.nat be uk123 since 'this' is hm.
If you say
HarMol hs = new HarMol();
hs.nat will be uk123
Hope this helps,
Sheryl.