I understand what these fields are and how to use them, but I'm wondering this:
How does the Java compiler actually handle special fields like this in its compilation step? Does it really look for variables just based on their name?
That seems very non-Java like... Other than serialVersionUID and serialPersistentFields, are there others?