Printer homes to Z stop-switch, but presses on heat bed during printing
The correlation between the endstop switch  -- or sensor -- and the surface of the bed is not known a priori .  In your case, there are two possibilities.  I'd say the more likely is that your g-code generator is not setting the Z-height offset from the bed correctly.   The other is that your bed is tilted, so proper Z-home at one corner does not match the entire bed.

Try this:  first manually move the extruder head to all four corners and adjust the bed screws until the separation is identical at all times.   Then let your gcode start up -- and don't worry if the extruder depresses the bed during homing, as that doesn't matter.  See where the extruder is once the print starts.  Adjust the endstop switch up or down to compensate until the print head when printing is just off the surface and the first layer adheres well.  

If all that doesn't work, then you may have the wrong printer profile settings in your slicing softwqre.