Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在另一个类中将类对象作为变量作为构造函数参数传递?_Java - Fatal编程技术网

Java 如何在另一个类中将类对象作为变量作为构造函数参数传递?

Java 如何在另一个类中将类对象作为变量作为构造函数参数传递?,java,Java,我有一个名为Fullname的类,它有fname、mname和lname变量。 然后是另一个类参与者,其变量名为Fullname类型,标记为int类型。 在另一个类中,我必须创建大小为5的参与者数组,并且必须存储来自用户输入的信息 我的问题是如何读取Fullname变量的值,然后将其作为构造函数参数传递。 使用扫描程序时,出现无法从字符串转换为全名的错误 我没有得到Fullname变量的正确输出 public class Participant { fullname name;

我有一个名为Fullname的类,它有fname、mname和lname变量。 然后是另一个类参与者,其变量名为Fullname类型,标记为int类型。 在另一个类中,我必须创建大小为5的参与者数组,并且必须存储来自用户输入的信息

我的问题是如何读取Fullname变量的值,然后将其作为构造函数参数传递。 使用扫描程序时,出现无法从字符串转换为全名的错误

我没有得到Fullname变量的正确输出

public class Participant {
    fullname name;
    int rollno;
    float marks;

    public Participant(fullname nameFullname, int rollno, float marks) {
        super();
        this.name=new fullname(null, null, null);
        this.rollno = rollno;
        this.marks = marks;
    }

    @Override
    public String toString() {
        return "name=" + name + ", rollno=" + rollno + ", marks=" + marks + "";
    }
}

public class Implements {

    public static void main(String[] args) {
        String a = null, b = null, c = null;
        int rollno = 0;
        float marks = 0;
        Participant part[] = new Participants[5];
        Scanner sc = new Scanner(System.in);

        rollno = sc.nextInt();
        marks = sc.nextFloat();
        a = sc.next();
        b = sc.next();
        c = sc.next();

        Fullname name = new Fullname(a, b, c);

        part[1] = new Participant(name, rollno, marks);
        System.out.println(part[1].toString());
    }
}
sc.next()

正在返回一个
字符串
(),您正试图将其分配给
全名
对象<代码>全名不是字符串的实例,因此无效。 如果你想做这个任务,你需要实现一个函数来处理这个任务

part=new participants(name,rollno,marks)

无法工作,因为您已将部件声明为数组,并且正在尝试将参与者分配给它。(顺便说一下,该类别应以大写字母声明)。如果要分配它,请添加索引。(例如,
part[0]=新参与者(姓名、rollno、标记)

显示您尝试了什么如果没有看到您尝试了什么,它很难帮助您添加代码的问题,请不要在注释中发布。我对代码做了一些更改,但仍然没有获得“name”的正确输出。