【问题标题】:My method from another class, will not call an input in my Main class我来自另一个类的方法,不会在我的主类中调用输入
【发布时间】:2019-04-15 16:40:53
【问题描述】:

我正在自学 Java,并且正在尝试运行我编写的一段代码。我在我的 Udemy 自学课程中,我们正在谈论课程。我在我的 IDE IntelliJ 中创建了一个名为 Person 的项目。本质上,目标是输入名字和姓氏作为字符串,年龄作为数字,然后遍历并吐出人的全名,如果他们是青少年。

然而,我正处于输入阶段,并且在我的主类中不断收到错误消息。但是,当我尝试输入 Dan (person.SetFirstName("Dan")) 时,它会返回一条错误消息,“setFirstName() in person cannot be applied to java.lang.String”

你会在下面找到我的主类代码,以及我的 person 类的前几行,我觉得如果我能找出第一种方法的问题,我可以解决其余的问题。

我在我的班级论坛上问过,但我似乎无法得到答案,有人认为这可能是我的 IDE 本身的问题?

公共类主{

public static void main(String[] args) {

Person person = new Person();
person.setFirstName("Dan");
person.setLastName();
person.setAge();
    System.out.println("Full Name = " + person.getFullName());
    System.out.println("Are they a teenager? " + person.isTeen());
    person.setFirstName();
    person.setAge();
    System.out.println("Full Name = " + person.getFullName());
    System.out.println("Are they a teenager? " +person.isTeen());
    person.setLastName();
    System.out.println("Full Name = " + person.getFullName());

}

}

公共类人{

private String firstName;
private String lastName;
private int age;

public String getFirstName(){
    return this.firstName;
}
public void setFirstName(){
    this.firstName = firstName;
}

【问题讨论】:

    标签: java intellij-idea jetbrains-ide


    【解决方案1】:

    public void setFirstName() 没有定义任何参数,但您将字符串参数传递给它 (person.setFirstName("Dan");) - 因此出现错误。

    尝试将方法签名更改为:

    public void setFirstName(String firstName){
            this.firstName = firstName;
        }
    

    【讨论】:

    • 非常感谢!我觉得自己好傻。感谢您的回复!
    【解决方案2】:

    改变这个

    public void setFirstName(){
        this.firstName = firstName;
    }
    

    public String setFirstName(){
        this.firstName = firstName;
        return firstName;
    }
    

    【讨论】:

    • 嘿,刚刚尝试了您的编辑,仍然给我错误,“setFirstName() in Person 不能应用于 (java.lang.String)。
    • 如果它有帮助,我只是运行了调试器,这也是所说的,错误:(8, 11) java: com.student.Person 类中的方法 setFirstName 不能应用于给定类型;必需:未找到参数:java.lang.String 原因:实际参数列表和形式参数列表的长度不同
    猜你喜欢
    • 2013-08-12
    • 2014-11-01
    • 2016-08-13
    • 1970-01-01
    • 2019-03-20
    • 1970-01-01
    • 2016-01-08
    • 2012-09-06
    • 1970-01-01
    相关资源
    最近更新 更多