Java 为什么方法使用类名作为修饰符(?)和参数?

Java 为什么方法使用类名作为修饰符(?)和参数?,java,class,methods,Java,Class,Methods,下面是我弄糊涂的四种方法,这四种方法都在老师的课堂上。我有一个学生班和一个教师班。在教师类中,声明的是ArrayList students作为实例变量 如何解释我在下面给出的方法中看到的学生,它也用作参数。我对StudentsearchStudent(在方法中)和Student-Student(在参数中)感到非常困惑。这是否仅适用于ArrayList?如何理解一个类将使用类名搜索另一个类的概念 public Student searchStudent(Student student) {

下面是我弄糊涂的四种方法,这四种方法都在老师的课堂上。我有一个学生班和一个教师班。在教师类中,声明的是
ArrayList students
作为实例变量

如何解释我在下面给出的方法中看到的学生,它也用作参数。我对Student
searchStudent
(在方法中)和
Student-Student
(在参数中)感到非常困惑。这是否仅适用于
ArrayList
?如何理解一个类将使用类名搜索另一个类的概念

public Student searchStudent(Student student)
{
    //confuses me
    Student found = null;

    if (this.students.contains(student))
    {
        int index = this.students.indexOf(student);
        if (index != -1)
        {
            found = this.students.get(index);
        }
    }
    return found;
}

public Student searchStudent(int id)
{
    //confuses me
    Student beingSearched = new Student();
    beingSearched.setStudentId(id);
    return this.searchStudent(beingSearched);
}

public boolean addStudent(Student student)
{
    //confuses me
    boolean added = false;
    if (this.searchStudent(student) == null)
    {
        this.students.add(student);
        added = true;
    }
    return added;
}

public boolean addStudent(int id, String name, double grade)
{
    //this is fine as i know boolen and int, String and double//
    Student student = new Student(id, name, grade);
    return this.addStudent(student);
}

我建议你仔细研究一下定义方法

  • 公共学生搜索学生(学生)

    它是一个
    public
    方法,返回类型为
    Student
    的对象,也接受类型为
    Student
    的对象。 它需要接受
    student
    参数,因为它正在搜索它。当您想要搜索记录中是否存在某个
    student
    (在
    student
    ArrayList中)时,将使用此方法

  • 公共学生搜索学生(int id)

    相同,但它接受的参数是
    int
    。在这里,您将搜索
    学生
    ,而不是通过对象本身,而是通过
    学生
    的id

  • public boolean addStudent(Student-Student)

    它是一种将
    student
    (类型为
    student
    )添加到
    student
    数组列表的方法


提示:在调试模式下运行您的代码,并遵循您不理解的每种方法,您会惊奇地发现这将在多大程度上帮助您更好地理解程序流程。

的确如此。我喜欢调试器,我调试每件事,甚至我的电视和微波炉。