class Student

     String name;
     int age;
     boolean equals(Object obj)
    {
      Student st=null;
      if(obj instanceof Student)
          st=(Student)obj;
     else
        return false;
      if(st.name==this.name && st.age==this.age)
   return true;
     else
   return false;
}public static void main(String[] args)
   {
      Student p=new Student();
      Student q=new Student();
      p.name="xyz";
      p.age=13;
      q.name="xyz";
       q.age=13;
if(p.equals(q))
  System.out.println("p与q相等");
else
  System.out.println("p与q不等");
}
}为何不能覆盖呢?  哪个地方错了?