One may not always know the Type of an object at compile-time, but may need to create an instance of the Type.
Type
How do you get a new objec
public AbstractType New { get { return (AbstractType) Activator.CreateInstance(GetType()); } }