I don't see the point of having a set of accessors on a Ball object from the point of view of a Dog object. It is really up to the programmer to have method names that makes sense in the first place. I don't see how a dog.Weight() makes more sense than the convention dog.GetWeight().
Never the less, I am now intrigued by the book mentioned. :)
[edit] I am curious about the book.