区分过载方法

王朝other·作者佚名  2008-05-31
宽屏版  字体: |||超大  

区分过载方法

若方法有同样的名字,Java怎样知道我们指的哪一个方法呢?这里有一个简单的规则:每个过载的方法都必须采取独一无二的自变量类型列表。

若稍微思考几秒钟,就会想到这样一个问题:除根据自变量的类型,程序员如何区分两个同名方法的差异呢?

即使自变量的顺序也足够我们区分两个方法(尽管我们通常不愿意采用这种方法,因为它会产生难以维护的代码):

//: OverloadingOrder.java

// Overloading based on the order of

// the arguments.

public class OverloadingOrder {

static void print(String s, int i) {

System.out.println(

"String: " + s +

", int: " + i);

}

static void print(int i, String s) {

System.out.println(

"int: " + i +

", String: " + s);

}

public static void main(String[] args) {

print("String first", 11);

print(99, "Int first");

}

} ///:~

两个print()方法有完全一致的自变量,但顺序不同,可据此区分它们。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有