I want to know how to deal with the color of object,Should i use diffuse reflection on the surface?
A common interpretation of surfaces for rendering is that of a BSDF (Bidirectional Scattering Distribution Function) made up of a BRDF (R stands for Reflectance) and a BTDF (T stands for Transmittance).
In such a model, the reflectance part is the light that 'bounces' off the surface, and the transmittance part is the light that penetrates the surface.
When modeling the latter there are two common looks that we try to replicate. One is that of pure refraction (light goes through and bends at the surface), and the other is that of diffusion (light bounces around within the surface and is re-emitted (this is commonly called diffuse reflection). What determines which one of these happens is the turbidity of the material, which is analogous to the probability of a light ray changing its path while inside the material.
These two phenomena are opposite ends of a spectrum and therefore there cannot, on real materials, be a blend (e.g. alpha blend) between the two. though one could concieve a model where turbidity of the material is not at either end but somewhere in-between, however that would require taking into account the volume of a 3d model and not only the surfaces (this often called Volume Scatter or Sub Surface Scatter).
Thus, what you are looking for is probably refraction. There are many ways to aproximate it. One such way that will get you the expected color but not the distortion you might want is multiplicative blending.