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

Data hiding problems

 
abalfazl hossein
Ranch Hand
Posts: 635
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Data hiding happened when variable in super class and subclass have same name,I want to know what are problems about data hiding?
 
Matthew Brown
Bartender
Posts: 4568
9
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Well, the biggest problem is that it confuses people, leading to difficult to find bugs (you think you're referring to one variable when in fact you're referring to another).

In real development, though, you should just avoid it. For instance, if you're following the practice of making all member variables private, then they're not visible to the subclass, so the problem never arises.
 
Jim Hoglund
Ranch Hand
Posts: 525
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Matthew,

It's also true in "real development" that 'protected' access is a very powerful
and helpful tool to write clean and readable code. So making everything
private doesn't always work out the best. Lots of "sets" and "gets" can really
cloud the code. I have found that careful choice of variable names is a good
answer. And as you say, never-never-never allow hiding to happen.

Jim ...
 
It is sorta covered in the JavaRanch Style Guide.
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic