my definition:
the color of an object is determined by the wavelengths of visible light radiation which it reflects. for example, plant leaves, which are almost always green, reflect light around the 500-600nm range while absorbing the other wavelengths for photosynthesis. an object will only show it's true color when in the presence of a light source emitting wavelengths of light which the object cannot absorb. for example, a red object will appear red in the presence of red or white light, but it will appear black in the presence of blue light. this definition is true for objects that cannot create light.
for objects that CAN create their own light energy, their color is determined by the elements from which it is composed. each element emits it's own, unique spectrum of wavelengths when energized. some examples are: sodium, which emits orange light, barium, which emits green light, calcium, which emits a white-ish light, and neon, which you could probably guess produces a very deep shade of red. the unique spectrums produced by each element is caused by differences in electron configurations. when energized, the electrons in an atom will jump to orbitals of higher energy levels, but because it is very unstable for them to remain in that position, they fall back down to their prior level and emit a photon with an energy proportional to the significance of the jump. photons of certain energy levels will appear as visible light.