The personality of a dog is flexible and indeterminate. Dogs can be exuberant or shy; friendly or hostile; fearful or bold; aggressive or passive or some combination of the above. These differences in personality may to some extent be determined by breed, or individual genetics, but for the most part it is based on how and to what extent each particular dog has been socialized.
One of the kindest things any person can do is to adopt an animal from a shelter or humane society. These are animals that desperately need a home and human beings to love and care for them. However, if you have decided to adopt a dog from a rescue situation, you must go in with your eyes wide open.
Half the battle of dog training is finding the right training class and the right trainer to assist you along the way. Not all dog trainers or classes are created equal! There are a lot of differences among trainers, and you need to be prepared to find the best one for you and your dog.