I'm an English teacher, and I'm looking for a theoretical model that suggests language is used differently by different classes. I am aware of Bernstein's Elaborated code, which refers to an elite using an exclusive sociolect, but I think this just refers to spoken language. Is there anything similar?
You might want to look at the concept of prestige in sociolinguistics:
In sociolinguistics, prestige describes the level of respect accorded to a language or dialect as compared to that of other languages or dialects in a speech community. The concept of prestige in sociolinguistics is closely related to that of prestige or class within a society. Generally, there is positive prestige associated with the language or dialect of the upper classes, and negative prestige with the language or dialect of the lower classes. The concept of prestige is also closely tied to the idea of the standard language, in that the most prestigious dialect is likely to be considered the standard language, though there are some notable exceptions to this rule, such as Arabic
compare the prestige of two languages in diglossia:
refers to a situation in which two dialects or usually closely related languages are used by a single language community. In addition to the community's everyday or vernacular language variety (labelled "L" or "low" variety), a second, highly codified variety (labelled "H" or "high") is used in certain situations such as literature, formal education, or other specific settings, but not used for ordinary conversation.