Topic: 关于区分过载方法的程序解释

  Print this page

1.关于区分过载方法的程序解释 Copy to clipboard
Posted by: yujian
Posted on: 2006-01-09 21:14

区分过载方法
若方法有同样的名字,Java怎样知道我们指的哪一个方法呢?这里有一个简单的规则:每个过载的方法都必须采取独一无二的自变量类型列表。
若稍微思考几秒钟,就会想到这样一个问题:除根据自变量的类型,程序员如何区分两个同名方法的差异呢?
即使自变量的顺序也足够我们区分两个方法(尽管我们通常不愿意采用这种方法,因为它会产生难以维护的代码):

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

//: 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");
}
} ///:~

结果:
String: String first, int: 11
int: 99, String: Int first

2.Re:关于区分过载方法的程序解释 [Re: yujian] Copy to clipboard
Posted by: ranchgirl
Posted on: 2006-01-09 23:21

Read here:
http://java.sun.com/j2se/1.4.2/docs/api/java/io/PrintStream.html


   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923