I have this code where I am printing a string variable. The first output is showing what is expected but the second time it prints some unreadable output(I think its reference id). Please explain: Why does this happen?
public class Str3 {
    public String frontBack(String str) {
        char c[] = str.toCharArray();
        char temp = c[0];
        c[0] = c[c.length - 1];
        c[c.length - 1] = temp;
        return c.toString();
    }
    public static void main(String args[]) {
        Str3 s = new Str3();
        String s1 = new String("boy");
        System.out.println(s1);
        String s2 = s.frontBack("boy");
        System.out.println(s2);
    }
}
Output:
boy
[C@60aeb0
 
     
     
     
     
     
    