This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
Hemant Khandal wrote:how can we access overriding method foof()?Is there any way to access this?thanks in advance.
Not sure of your issue here. By definition, the overriding method (subclass) is always the method that will be called. It is the super class' method (the method that was overridden) that is no longer accessible. And this is true, even if the subclass is an anonymous inner class.
Do you mean overridden? You can use the super keyword, but only in a non-static context in the subclass.
Joined: May 29, 2011
Now I am talking only above code.I want to call overridden method foof() from main().Is it possible ? If yes then please let me know how can we do this?
It's pleasure for me if you add some line as per situation.
This is only for understanding java concepts.
Thanks in advance.
Hemant Khandal wrote:Now I am talking only above code.I want to call overridden method foof() from main().Is it possible ? If yes then please let me know how can we do this?
From the code, it is *not* possible. The Foo instance is created internal to the go() method. It can't be accessed from the main method.
And this doesn't have anything to do with it being an anonymous inner class, or if the method is overridden or not. The instance is just not accessible to the main method. Period. You will have to modify the go() method to expose it somehow, before the main method can access it.