Diffrence between Showding and overriding
| 1. Purpose :
Shadowing : Protecting against a subsequent base class modification introducing a member you have already defined in your derived class Overriding : Achieving polymorphism by defining a different implementation of a procedure or property with the same calling sequence2.Redefined element : Shadowing : Any declared element typeOverriding : Only a procedure (Function or Sub) or property 3.Redefining element :Shadowing : Any declared element type Overriding : Only a procedure or property with the identical calling sequence4.Accessibility : Shadowing : Any accessibilityOverriding : Cannot expand the accessibility of overridden element (for example, cannot override Protected with Public) 5.Readability and writability : Shadowing : Any combinationOverriding : Cannot change readability or writability of overridden property 6.Keyword usage :Shadowing : Shadows recommended in derived class;Shadows assumed neither Shadows nor Overrides specified Overriding : Overridable required in base class; Overrides required in derived class 7.Inheritance of redefining element by classes deriving from your derived class : Shadowing : Shadowing element inherited by further derived classes; shadowed element still hidden Overriding : Overriding element inherited by further derived classes; overridden element still overridden |
|
