Each dog inherits 2 color genes - one from each parent. One is the dominant (expressed) gene, and that is the color that the dog IS. The other recessive (hidden) gene is a secondary color that is carried and can be expressed in that dog's future progeny.
The following are not real gene codes, I've just used the letter "A" to help illustrate the basics. We will cover the actual coat genetic codes shortly;
Homozygous dominant example (AA)
Heterozygous: (Aa)-- dog would be "A" color but carry the "a" color
Homozygous Recessive: (aa) ie the dog needs both these copies to show a recessive (hidden color)
Ok, now that we've covered that.... for GSDs the following is the dominance order for coat colors:
Sable (aw), Black and Tan (as), Bicolor (at), and Black(a) with sable being the most dominant and black being the least dominant (recessive)
The above chart is from AltosLand kennel's website.
For more information, they have a wonderful breakdown of each genetic cross: http://www.altostland.com/colors.html
VetGen has more information on color allele loci and tests to determine which dogs carry which alleles for both coat color and length.