Sachverhalt: Sachverhalt: A. Das Untersuchungsamt Altstätten erklärte X._ mit Strafbescheid vom 10. Oktober 2002 der groben Verkehrsregelverletzung (Überholen vor und in einer unübersichtlichen Kurve bei Gegenverkehr) und des pflichtwidrigen Verhaltens bei Unfall schuldig und verurteilte ihn zu 3 Wochen Gefängnis, unter Gewährung des bedingten Strafvollzuges, sowie zu einer Busse von Fr. 2'000.--. X._ reichte gegen den Strafbescheid Einsprache ein. Das Untersuchungsamt erhob am 29. Oktober 2002 gegen X._ Anklage wegen grober Verletzung der Verkehrsregeln und pflichtwidrigen Verhaltens bei Unfall. Die Einzelrichterin des Bezirksgerichts Werdenberg sprach X._ mit Entscheid vom 18. Juni 2003 von den gegen ihn erhobenen Anschuldigungen frei und verwies die Zivilforderung des Strafklägers auf den ordentlichen Prozessweg. Die Staatsanwaltschaft des Kantons St. Gallen und der Strafkläger Y._ legten Berufung ein. Das Kantonsgericht St. Gallen hiess mit Entscheid vom 9. Februar 2004 die Berufungen gut. Es erklärte X._ der groben Verkehrsregelverletzung und des pflichtwidrigen Verhaltens bei Unfall schuldig und verurteilte ihn zu 3 Monaten Gefängnis, unter Gewährung des bedingten Strafvollzugs, sowie zu einer Busse von Fr. 2'000.--. Zudem schützte es die Zivilforderung des Strafklägers und verpflichtete X._, Y._ Fr. 7'035.45 zu bezahlen. Das Kantonsgericht auferlegte die Kosten der Untersuchung und des erstinstanzlichen Gerichtsverfahrens von Fr. 2'650.-- sowie die Kosten des Berufungsverfahrens von Fr. 1'800.-- X._ und verpflichtete diesen, Y._ für die Kosten der Vertretung im gesamten Strafverfahren mit Fr. 3'860.70 zu entschädigen. A. Das Untersuchungsamt Altstätten erklärte X._ mit Strafbescheid vom 10. Oktober 2002 der groben Verkehrsregelverletzung (Überholen vor und in einer unübersichtlichen Kurve bei Gegenverkehr) und des pflichtwidrigen Verhaltens bei Unfall schuldig und verurteilte ihn zu 3 Wochen Gefängnis, unter Gewährung des bedingten Strafvollzuges, sowie zu einer Busse von Fr. 2'000.--. X._ reichte gegen den Strafbescheid Einsprache ein. Das Untersuchungsamt erhob am 29. Oktober 2002 gegen X._ Anklage wegen grober Verletzung der Verkehrsregeln und pflichtwidrigen Verhaltens bei Unfall. Die Einzelrichterin des Bezirksgerichts Werdenberg sprach X._ mit Entscheid vom 18. Juni 2003 von den gegen ihn erhobenen Anschuldigungen frei und verwies die Zivilforderung des Strafklägers auf den ordentlichen Prozessweg. Die Staatsanwaltschaft des Kantons St. Gallen und der Strafkläger Y._ legten Berufung ein. Das Kantonsgericht St. Gallen hiess mit Entscheid vom 9. Februar 2004 die Berufungen gut. Es erklärte X._ der groben Verkehrsregelverletzung und des pflichtwidrigen Verhaltens bei Unfall schuldig und verurteilte ihn zu 3 Monaten Gefängnis, unter Gewährung des bedingten Strafvollzugs, sowie zu einer Busse von Fr. 2'000.--. Zudem schützte es die Zivilforderung des Strafklägers und verpflichtete X._, Y._ Fr. 7'035.45 zu bezahlen. Das Kantonsgericht auferlegte die Kosten der Untersuchung und des erstinstanzlichen Gerichtsverfahrens von Fr. 2'650.-- sowie die Kosten des Berufungsverfahrens von Fr. 1'800.-- X._ und verpflichtete diesen, Y._ für die Kosten der Vertretung im gesamten Strafverfahren mit Fr. 3'860.70 zu entschädigen. B. X._ reichte beim Bundesgericht staatsrechtliche Beschwerde gegen das Urteil des Kantonsgerichts ein. Er beantragt, der angefochtene Entscheid sei vollumfänglich aufzuheben und die Strafsache sei "im Sinne eines Freispruchs und unter Verweisung der Zivilforderung auf den ordentlichen Prozessweg an das Kantonsgericht St. Gallen zurückzuweisen". B. X._ reichte beim Bundesgericht staatsrechtliche Beschwerde gegen das Urteil des Kantonsgerichts ein. Er beantragt, der angefochtene Entscheid sei vollumfänglich aufzuheben und die Strafsache sei "im Sinne eines Freispruchs und unter Verweisung der Zivilforderung auf den ordentlichen Prozessweg an das Kantonsgericht St. Gallen zurückzuweisen". C. Der Beschwerdegegner Y._ stellt in seiner Vernehmlassung den Antrag, die Beschwerde sei abzuweisen. Die Staatsanwaltschaft des Kantons St. Gallen beantragt unter Verzicht auf Gegenbemerkungen die Abweisung der Beschwerde. Das Kantonsgericht verzichtete auf eine Vernehmlassung. C. Der Beschwerdegegner Y._ stellt in seiner Vernehmlassung den Antrag, die Beschwerde sei abzuweisen. Die Staatsanwaltschaft des Kantons St. Gallen beantragt unter Verzicht auf Gegenbemerkungen die Abweisung der Beschwerde. Das Kantonsgericht verzichtete auf eine Vernehmlassung. D. Mit Präsidialverfügung vom 10. Mai 2004 wurde der staatsrechtlichen Beschwerde aufschiebende Wirkung zuerkannt.