Forums Register Login

K&B chapter 2 question 11

+Pie Number of slices to send: Send
The question is as follow


what is result?

A. subsub

B. sub subsub

C. alpha subsub

D. alpha sub subsub

E. compilation fails

F. An exception is thrown at run time




offilcial ans is ..

C is correct. Watch out, Sub SubAlpha extends Alpha ! Since the code does not attempt to make a SubAlpha , the private constructor in SubAlpha is Okey.




I think it is as I expected that s is a static variable and can't be inherited by its subclasses .. Am I right ???


or any diffrent logic is involved here please clear my problem.. thanks..

+Pie Number of slices to send: Send
Hi Rajnish, welcome to javaranch.

Rajnish please Use Code Tags when you post a source code. That way your code looks formatted. Unformatted code is hard to read. You can add code tags by wrapping your code in [code] [/code] tags. You can edit your message using button and then add code tags to it.

I think you forgot to put inheritance in your code, none of your classes extend Alpha class...
+Pie Number of slices to send: Send
Thanks Ankit sir I have updated my question please try to figure out my problem and provide a solution .
+Pie Number of slices to send: Send
You've broke the inheritance by private constructor of your SubAlpha class!

EDIT : OP's code is corrected!
+Pie Number of slices to send: Send
I copy-pasted the code and have been able to compile and execute it without any errors and output being
alpha subsub
Is it anything to do with the compiler version or?....
+Pie Number of slices to send: Send
 

Vicky Mehta wrote:I copy-pasted the code and have been able to compile and execute it without any errors and output being
alpha subsub
Is it anything to do with the compiler version or?....



Your answer is correct. No problem in the codes.

It's corrected!
+Pie Number of slices to send: Send
 

Rajnish Mishra wrote:The question is as follow

I think it is as I expected that s is a static variable and can't be inherited by its subclasses .. Am I right ???
or any diffrent logic is involved here please clear my problem.. thanks..



If a superclass has an instance variable or static variable then every subclass has this variable.

Only trick in this question is that the SubSubAlpha extends only the Alpha (and doesn't extend the SubAlpha). When new SubSubAlpha is creating the SubSubAlpha constructor calls Alpha constructor which adds "alpha" to the s String, after that SubSubAlpha adds " subsub" to the s and in a next line of the program the s variable i shown as "alpha subsub"
+Pie Number of slices to send: Send
Thanks you all I think my problem is resolved .

Answer is that every variable (static/nonstatic) is inherited by the subclass hence it can be accessed from the subclass.
I wish to win the lottery. I wish for a lovely piece of pie. And I wish for a tiny ad:
a bit of art, as a gift, the permaculture playing cards
https://gardener-gift.com


reply
reply
This thread has been viewed 2654 times.
Similar Threads
Are questions in real exam intentionally misleading too?
Static Member Initialization
Is Static veriable is visibile to subclass
private constructor
some confusion about inheritance contained static.
More...

All times above are in ranch (not your local) time.
The current ranch time is
Mar 29, 2024 01:36:47.