nThere are two other forms of derivation that are possible: protected derivation and private derivation.
nIf we are interested in extending the client interface
for one of the direct base
classes, then it should be derived as
public.
nIf we are interested in replacing the client interface
but allowing future
derivation, then it should be derived as protected.
nIf we want no future derivation, then it should be derived as private.