Avoid protected data

From CSSEMediaWiki
Revision as of 09:39, 6 October 2008 by Tureiti Keith (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Reil's Heuristic #5.3: All data in a base class should be private; do not use protected data.

  • data - The fields defined within a class
  • private - To restrict accessibility to within an instance of a class
  • protected - To restrict accessibility to within an instance of a class, and to instances of inheriting classes

Description

Riel's Heuristic #5.3 demands that access to a class's fields should be restricted to instances of that class. Inheriting classes should access these fields via accessor methods only. By restricting a subclass's field accesses in this way, a designer is free to change the manner in which the data is stored within the base class, with minimal effect on subclasses.

See Also

Personal tools