you set aside that amount of memory, whereas when you define a type, it's dynamically sized
This is the exact reason why limits should be set on the number of objects created.There are truly very few scenerios that really require infinte objects or dynamic memory management. Reserving and controlling your memory usage is more effecient in IMHO.