In my Hibernate classes should instance collections be initialized
public class Basket {
private List items = new ArrayList();
...getters and setter
You should initialize it. Even if Hibernate where to initialize it later even if it had no content (which I'm not sure it's always the case), you should initialize it to be sure that it's always coherently not-null.
In the provided example you can see that Cat has no explicit no-argument constructor, so they have to initialize the set at declaration. Most likely when you see it left uninitialized there was also an explicit no-arg constructor that initialized it later.