aspose file tools*
The moose likes Beginning Java and the fly likes Doubt with a code Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of EJB 3 in Action this week in the EJB and other Java EE Technologies forum!
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "Doubt with a code" Watch "Doubt with a code" New topic
Author

Doubt with a code

Vishal Hegde
Ranch Hand

Joined: Aug 01, 2009
Posts: 1050



//super.over should call variable of alpha 1st shouldnt it?

Then why is that the output is
221

Why isnt the 1st value 1 ?


http://www.lifesbizzare.blogspot.com || OCJP:81%
Rob Spoor
Sheriff

Joined: Oct 27, 2005
Posts: 19542
    
  16

"super" in super.over only "points up" one class. Since the current class is Gamma that means that super.over means Beta's over - 2.

As for why b.over and a.over are 2 and 1 respectively (in case you don't know): fields (and static methods) are not subject to the rules of polymorphism; the reference type (Beta and Alpha respectively) determine what field (or static method) to use.


SCJP 1.4 - SCJP 6 - SCWCD 5 - OCEEJBD 6
How To Ask Questions How To Answer Questions
 
wood burning stoves
 
subject: Doubt with a code
 
Similar Threads
Mock trip up question Explained, Shadowing vs Overriding
Try this Qs !!!
instanceof operator
Protected in subclasses