我正在用Java编写一个程序,我正面临这个问题。
我已经创建了一个抽象的超类Customer和一个子类RegisteredCustomer当然还有主类。我找不到在main中使用RegisteredCustomer构造函数的方法。
消息The method RegisteredCustomer(String, long, String, String) is undefined for the type RegisteredCustomer即使我已经在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);

07-24 09:24