通常Javaでは

/**
@version 1.0
*/

のようにクラスのバージョンを設定できますが、
クラスにバージョンを設定するメリットって何でしょうか?
プログラムのバージョンと同じと考えても良いのでしょうか?
また、バージョン管理はどのようにするべきでしょうか?
例えば、Aというプログラムではversion1.0のクラスを
Bというプログラムではversion1.1のクラスを使っている場合、
version1.0の方のクラスも上書きせずに残しておくべきでしょうか?