|
仮想関数 |
NVI |
カスタマイズ |
○Overrideすることにより可能 |
○Privateに置かれた仮想関数により可能 |
実装の隠蔽 |
×できない。 |
○実装はprivate配下に置かれているため、可能 |
共通の実装 |
×できない。 |
○publicに置かれた非仮想関数をOverrideすることにより可能 |
共変の戻り値 |
○できる |
×非仮想関数がインターフェースのため、不可能 |
|
仮想関数 |
NVI |
カスタマイズ |
○Overrideすることにより可能 |
○Privateに置かれた仮想関数により可能 |
実装の隠蔽 |
×できない。 |
○実装はprivate配下に置かれているため、可能 |
共通の実装 |
×できない。 |
○publicに置かれた非仮想関数をOverrideすることにより可能 |
共変の戻り値 |
○できる |
×非仮想関数がインターフェースのため、不可能 |