Как я могу получить доступ к методам класса Department с помощью объекта Student - PullRequest
0 голосов
/ 07 июня 2019

Создание класса Department со следующими закрытыми переменными-членами

int did
String dname

Включите соответствующие методы получения и установки в класс Отдела.

Создать класс Student со следующими личными переменными-членами

int sid
String sname
Department department

Включите соответствующий метод получения и установки в класс ученика.

Создайте класс TestMain, у которого есть метод main.

В дополнение к основному методу создайте метод

       public static Student createStudent() -  All input as shown in the sample input should be got in this method.  Set the values to the Student object and return that object

Примечание. В методе main вызовите метод createStudent и распечатайте сведения об объекте, возвращенном этим методом.

Я уже пытался создать новый объект, используя имя Department, но у меня нет доступа к методам

import java.util.Scanner;

public class TestMain {

    public static Student student;
    public static Department department;

    public static void main(String args[]) {
        createStudent();
        System.out.println("Department id:" + department.getDid());
        System.out.println("Department name:" + department.getDname());
        System.out.println("Student id:" + student.getSid());
        System.out.println("Student name:" + student.getSname());
    }

    public static Student createStudent() {
        Scanner sc = new Scanner(System.in);
        student = new Student();
        department = new Department();
        System.out.println("Enter the Department id:");
        department.setDid(sc.nextInt());
        System.out.println("Enter the Department name:");
        department.setDname(sc.next());
        System.out.println("Enter the Student id:");
        student.setSid(sc.nextInt());
        System.out.println("Enter the Student name:");
        student.setSname(sc.next());
        return student;
    }
}

public class Student {

    private int sid;
    private String sname;
    private Department department;

    public int getSid() {
        return sid;
    }

    public void setSid(int sid) {
        this.sid = sid;
    }

    public String getSname() {
        return sname;
    }

    public void setSname(String sname) {
        this.sname = sname;
    }

    public Department getDepartment() {
        return department;
    }

    public void setDepartment(Department department) {
        this.department = department;
    }
}

public class Department {

    private int did;
    private String dname;

    public int getDid() {
        return did;
    }

    public void setDid(int did) {
        this.did = did;
    }

    public String getDname() {
        return dname;
    }

    public void setDname(String dname) {
        this.dname = dname;
    }
}

Пример ввода 1:

Enter the Department id:
100
Enter the Department name:
Computerscience

Enter the Student id:
123
Enter the Student name:
Sudha

Пример вывода 1:

Department id:100
Department name:Computerscience
Student id:123
Student name:sudha

1 Ответ

0 голосов
/ 07 июня 2019

вам не хватает:

student.setDepartment(department);

после этого вы можете сделать:

student.getDepartment().getSname();
...