Object-preserving class transformations