Well for one, if you only intend to handle a specific type, you shouldn't use an ArrayList. For example, if you only expect an array of bytes, you should only accept an array of bytes.
Only time I would think you may even think of using an ArrayList is instead of List.