java - 试图在main中调用子类的构造函数

标签 java windows eclipse

我正在用 Java 编写程序,但遇到了这个问题。

我创建了一个抽象父类(super class) Customer 和一个子类 RegisteredCustomer,当然还有主类。我找不到在 main 中使用 RegisteredCustomer 构造函数的方法。

消息 RegisteredCustomer 类型的方法 RegisteredCustomer(String, long, String, String) 未定义 即使我在 RegisteredCustomer 中使用这些参数创建了准确的构造函数>。

我已经尝试过 RegisteredCustomer.RegisteredCustomer(fn , tel , adr , em);Customer.RegisteredCustomer.RegisteredCustomer(fn, tel, adr, em);

注册客户

public class RegisteredCustomer extends Customer {

    private static int count = 0;

    private int id;
    private String email;
    private String  password;

    public RegisteredCustomer(String fullName, long telephone, String adress, String email) {
        super(fullName, telephone, adress);
        this.id = ++ count;
        this.email = email;
        Customer.getCustomers().add(Customer.getCustomers().size() , this);
    }

主要

RegisteredCustomer.RegisteredCustomer(fn, tel, adr, em);

最佳答案

使用 RegisteredCustomer.RegisteredCustomer(fn , tel , adr , em); 您尝试调用 RegisteredCustomer 类的静态方法 RegisteredCustomer ,它不存在,因此它告诉您该方法未定义。

下面的代码是您尝试调用的方法的示例。

public class RegisteredCustomer {

    ...

    public static void RegisteredCustomer(String fullName, long telephone,
            String adress, String email) {
        ...
    }
}

创建 RegisteredCustomer 实例的正确方法是调用:

new RegisteredCustomer(fn , tel , adr , em);

关于java - 试图在main中调用子类的构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56227173/

相关文章:

java - 从字符串中按名称获取变量

windows - Windows 上的 Jenkins slave(代理)有时会在启动时因 socketAccept 超时而失败

windows - 挂载 Windows 驱动器以从 Docker 访问

python - 检查 Python 脚本是否已在 Windows 中运行

java - 如何在本地Project Explorer和SVN Explorer之间切换?

java - 在 Eclipse (Java) 中使用 Unicode 符号的奇怪打印行为

android - 无法在真实设备上运行自动化脚本

java - 设置 bean 属性时无法解析对 bean 的引用 'userDetailsService'

java - 从DialogFragment调用Fragment时没有触发回调函数

java - 有没有类似于Android Market上的bug报告系统的bug报告库?