Win a copy of Programmer's Guide to Java SE 8 Oracle Certified Associate (OCA) this week in the OCAJP forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

"Overriding" private methods

 
Corey McGlone
Ranch Hand
Posts: 3271
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
While taking a mock exam, I ran into the following question:
Q: Which of the following are true:
One of the options was:
"A private method can not be overriden and made public."
The answer that was given in the exam was that this is a false statement. However, even though it's true that, when overriding methods, you can make them "more public," you can't override a private method, right? If you can't override a private method, you can't override it to make it public, right?
Just a quick addition to this question. If class B extends class A, which contains a private member C, is B considered to inherit B from A even though it doesn't have access to it?
Thanks,
Corey
 
Valentin Crettaz
Gold Digger
Sheriff
Posts: 7610
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
private methods are not inherited, and thus, cannot be overridden. That does not mean that you can't have a method in the subclass having the same signature than the method in the superclass, but this is not overriding...
See this code:

You can have a method in the subclass having the same signature than a private method in the superclass, but overriding does not apply because the private method is not inherited...
 
Corey McGlone
Ranch Hand
Posts: 3271
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks, Val - that's just what I thought.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic