Yo creo que la definición más breve y exacta que te puedo hacer sobre 
que diferencia hay entre un array y un vector es la siguiente: 
En un vector puedes almacenar todo tipo objetos, en un array solo podrás almacenar objetos del mismo tiempo que hayas definido. 
Por ejemplo, un vector:    
Código Java:
Ver original- //Creamos y damos valor 
- Persona p = new Persona(); 
- p.setNombre("Pepe"); 
-   
- Factura f = new Factura(); 
- f.setCif("123456789Z"); 
-   
- //Añadimos al vector 
- v.add(p); 
- v.add(f); 
Un saludo!