Why do we use an "initialize method" instead of a constructor? At face value, it looks like they both do the same thing.