Java - I love Javadoc Tool. Don't really get to use it much now, but still love it.
c# - Constraints on typed params.
public T AssignLiteItem<T>(ArchivingItem archivingItem ) where T : Item {
T myITem = (T)typeof(T).GetConstructor(new System.Type[] {}).Invoke(new Object[] { });
myITem.ItemReference = new ItemReference(archivingItem.Id);
return myITem;
}