Apexにおける「Virtual」と「Abstract」の使い分けとして正しいのはどれか。

abstractメソッドは実装を持てず、サブクラスでの実装を強制するが、virtualはデフォルトの実装を提供できる。