Can any object be transient?
No. Java Card 2.1.1 only support transient arrays of primitive types (boolean, byte, short) and of Object references. You can't just create a transient instance of the MyObject class.
Note than only the contents of a transient array is cleared. The reference on the array itself is stored in EEPROM, so there's no need to reallocate it at the beginning of each session.