Olá Bruno.
No caso da sua declaração, existem dois conceitos:
- tipo da variável de referência, que no caso é Collection;
- tipo do objeto instanciado, que é Vector.
Vector é uma Collection, por isso é possível usar uma variável de referência do tipo Collection para apontar para um objeto dele.
Mesmo que a sua referência aponte para um objeto do tipo Vector, essa referência só conhece os métodos de Collection.
Imagine que você criou uma classe Carro com vários métodos e realiza a declaração dele dessa forma:
Object carro = new Carro();
Irá compilar, pois o Carro é um Object (todo objeto em Java herda de Object), mas Object não tem como saber os métodos que tem em Carro, por isso ele consegue apenas o acesso aos seus próprios métodos.
Para entender melhor a vantagem de se fazer declarações como essa, você precisa se aprofundar nos conceitos de polimorfismo.