Serializing an object with custom class fields?

I have an object I’m trying to serialize so I can create a save file. The object is a class that’s marked as System.Serializable. Can I still serialize it if it has a field which is of a different class which is not serializable?

No, only flat data or structures can be serialized, like int, string, float and etc (like position, rotation, health and etc).

You can create new flat class (classA) and add only flat fields, arrays and lists. then you can make two functions there, one to save information from custom class into classA (it can be a constructor), and another function will load information from classA to custom class (it can be instance method).