Differentiate between StringBuffer and StringBuilder in Java programming.