同一类中的java类似方法

时间:2014-09-30 06:04:34

标签: java class methods private

我正在研究一个示例程序。基本上,它将客户注册到某种类型的服务,并使用下面的方法,我们可以在特定类型的服务下提取客户编号。

我的问题是,以这种方式设计它的目的是什么?我估计用户调用第一个方法,第一个方法调用第二个方法?我们也允许在一个类中使用相同名称的方法吗?谢谢!

public ArrayList<Integer> listCustomerNumber(String Service) {
    return listCustomer(service, thisYear, thisMonth);
}

ArrayList<Integer> listCustomerNumber(String serviceName, int year, int month) {
    ArrayList <Integer> ids = new ArrayList <Integer> ();
    Services sd = findServices(serviceName, year, month);
    if (sd != null){
        ArrayList <Customer> customers = sd.listCustomers();
        for (int i=0; i<customers.size(); ++i) {
            ids.add(customers.get(i).getId());
        }
    }
    return ids;
}

1 个答案:

答案 0 :(得分:1)

正如@NPE在评论中所说,它被称为Method Overloading

如果它在具有相同数量和相同数量和顺序的参数的同一个类中,那么例如:

int methoda(String a,int b) {
        return b;
}
String methoda(String b,int c) {
        return b;    
}

如果参数的数量及其类型相同但顺序不同则可能因为它导致方法重载。这意味着方法签名是否相同,包括方法名称,参数数量及其类型以及定义它们的顺序。

您还应该阅读Inheritance