Why does the arrow go up in inheritance?
inheritance, language-agnostic
Solution
AFAIK one of the reasons is notational consistency. All other directed arrows (dependency, aggregation, composition) points from the dependant to the dependee.
In inheritance, B depends on A but not vice versa. Thus the arrow points from B to A.
Problem
When you draw an inheritance diagram you usually go ``` Base ^ | Derived ``` Derived extends Base. So why does the arrow go up? I thought it means that "Derived communicates with Base" by calling functions in it, but Base cannot call functions in Derived.