In computing, a first-class object (also value, entity, and citizen), in the context of a particular programming language, is an entity which can be used in programs without restriction (when compared to other kinds of objects in the same language). First-class objects are said to belong to a first-class data type.
The term was coined by Christopher Strachey in the context of “functions as first-class citizens” in the mid-1960's.
Reference:
http://en.wikipedia.org/wiki/First-class_value