Most people do not know the second answer, like amei50, and not even the interviewer.
ArrayList increase by its original size; Vector increase by double its current size;
so from performance point of view, if not for thread safe, try not to use Vector. Even for the thread safe, use syc key word to make ArrayList safe.
if you can answer all of above, you definitely pass the phone screen.
for senior level answer for abstract class and interface:
you need to know what situation you use abstract class and what circumstance you use interface and why.
For example: plane can be abstract class, and have abstract method land and fly, F22 is class and extends plane, so F22 must implement land and fly method;
meanwhile, enginee can be an interface, has an abstract method start, so not only F22 can implement enginee interface, BMW also can implement enginee interface.
But BMW does not want to extends plane abstract class, casue BMW does not need to fly and land.
So this the situation or circumstance to use abstract class or interface. If you can make an answer like this, you will get the job.
for the MVC, you must say in java/j2ee point, jsp is view, servlet is controler, and BO and DAO and EJB are model. If you just talk about MVC pattern and without jsp, servlet, bo and dao, you are not answering java/j2ee MVC pattern.
Hope these will help, not perfect, but enough.