Check on official errata list, might somebody else identified that too, so your answer would get answered sooner. I don't have that book, but it seems like a simple typo, as surely getter should contain full attribute name in its name.
In this code, the property name is numWings. The getter would be getNumWings(), and the setter would be setNumWings().
The property is stored in a field named numberWings. It could also have been named foo. The name of the field does not have to be the same as the property name, and is also not interesting from a JavaBeans perspective because the field should be private anyway.
I agree that it is confusing to name the field something different than the property, though.