The ability for a type to be converted into another type with some data being kept.