不能让我的程序在java中编译?
我最近有一些问题... 我一直在网上一些教程,并输入他们告诉我的代码,我修改它一点,它不工作..这是在Java中。不能让我的程序在java中编译?
已编译
package newjavastoof;
public class NewJavaStoof {
private String girlName;
public void setName(String name)
{
girlName = name;
}
public String getName()
{
return girlName;
}
public void saying()
{
System.out.printf("your first girlfriend was %s", getName());
}
}
,这并不编译第11行代码的第二部分和编码的第一部分12
package newjavastoof;
import java.util.Scanner;
public class Stoof {
public static void main(String[] args)
{
Scanner imput = new Scanner(System.in);
Stoof stoofObject = new Stoof();
System.out.println("Enter name of first gf here: ");
String temp = imput.nextLine();
stoofObject.setName(temp);
stoofObject.saying();
}
}
什么是不正确吗? 我不明白,为什么没有setName或说? 我应该申报吗?
行之后
Stoof stoofObject = new Stoof();
应该
NewJavaStoof stoofObject = new NewJavaStoof();
谢谢;)没有注意到... ... – user2237848
Stoof stoofObject = new Stoof();
应该
NewJavaStoof stoofObject = new NewJavaStoof();
你为什么声明NewJavaStoof
但在你的主要方法使用Stoof
?我猜你应该NewJavaStoof
取代所有Stoof
或您NewJavaStoof
类重命名为Stoof
在Stoof您要呼吁stoofObject的setName是类型Stoof的。
Stoof stoofObject = new Stoof();
...
stoofObject.setName(temp);
方法setName未在Stoof上定义,而是在您的NewJavaStoof对象上定义。把Stoof改成NewJavaStoof,你就完成了。
NewJavaStoof stoofObject = new NewJavaStoof();
...
stoofObject.setName(temp);
创建从NewJavaStoof一个实例,而不是从Stoof .. Stoof没有方法的setName(),并说()..
使用本NewJavaStoof stoofObject = new NewJavaStoof();
你Stoof类没有按”包含一个setName方法。你应该创建一个NewJavaStoof的实例并在你的主要方法中使用它吗? – tomasmcguinness