java - 我的错误是什么? java Greeter类文件和驱动程序文件。声明greeter类并在驱动程序文件中实现

标签 java debugging compiler-errors syntax-error

在我的类(class)文件中,我有

public class Greeter {
private String thing;
public Greeter() {
}

public Greeter(String name) {
    this.thing = name;
}

public String Greet() {
    if (thing == null) {
        return "Heeeyyyy buddy!";
    } else {
        return "Hello " + thing;
    }       
}
}

在我的驱动程序文件中
import java.util.*;

public class Driver {

public static void main(String[] args) {

    // Declare and construct a Scanner object

    String greeting;
    String name;

    Greeter greeters;
    // Prompt for a name

    System.out.print("What is your name? ");

    // Read the name using the Scanner
    Scanner sc = new Scanner(System.in);
    name = sc.nextLine();

    // Construct a Greeter object
    greeters = new Greeter(name);

    // Get the greeting and save it to a String
    greeting = greeters.Greet();

    // Display the greeting to the command-line System.out.println(greeting);
    System.out.println(greeting);

    // Now do it again using the default constructor System.out.println("Greet someone you can’t remember..."); 
    greeters = new Greeter();
    System.out.println("Greet someone you can’t remember...");
    greeting = greeters.Greet();
    System.out.println(greeting);
} // end of main
} // end of class

我的错误是

Driver.java:14:错误:Greeter类中的构造函数Greeter无法应用于给定类型;
    greeters = new Greeter(name);
               ^

必需:无参数

找到:字符串

原因:实际和正式论点 list 的长度不同

Driver.java:16:错误:找不到符号
    greeting = greeters.Greet();
                       ^

符号:方法Greet()
location:Greeter类型的可变迎宾员

Driver.java:22:错误:找不到符号
    greeting = greeters.Greet();
                       ^

符号:方法Greet()

location:Greeter类型的可变迎宾员
3个错误

我不知道出什么问题了,我仔细检查了我的代码,以为它应该可以正常运行?感谢帮助

最佳答案

我在Eclipse中尝试您的代码,并且工作正常。我认为您可以尝试清理并再次运行。或者您可以在另一个IDE中尝试。

关于java - 我的错误是什么? java Greeter类文件和驱动程序文件。声明greeter类并在驱动程序文件中实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39994068/

相关文章:

c - 如何处理头文件中的函数定义?

java - 在 Java 中使用对称加密保护磁盘上的私钥

java - Java中的向上转换是否隐藏了子类的方法和字段?

debugging - 在 Fortran 程序中,检查是否使用 "-g"进行编译

debugging - 无法使用eclipse调试tomcat服务器

java - 将 Action 监听器添加到XML中提到的按钮

java - 解析xml文件的问题

对象集合上的 Java Lambda

java - 如何在 Linux 上调试 native Java 崩溃?

c++ - 为什么我会收到此错误?二进制 '==' : no operator found which takes a left-hand operand of type 'std::string'