为什么输出总是有乱码

import java.util.*;
public class di6zhou {
        public static void main(String[] args)
        {
            Scanner r = new Scanner(System.in);
            String name = r.next();
            if( ! r.hasNextInt() )
                return;
            int age = r.nextInt();
            if( age < 0 )
                return;
            Student stu = new Student();
            stu.set(name,age);
            System.out.println(stu.toString());
        }
    }
    class Student{
        private String name;
        private int age;
       public String getName(){
           return name;
       }
       public void setName(String name){
           this.name=name;
       }
       public int getAge(){
           return age;
       }
       public void setAge(int age){
           this.age=age;
       }
        public void set(String name,int age){
           setName(name);
           setAge(age);
            System.out.print("name:"+name+","+"age"+age);
        }
    }

是不是student类的tostring方法没有重写

编码默认jbk,改为utf-8即可