Java中为什么要有重载现象。
一句话告诉你们“节约词汇”。
我们先从生活中的例子来看。
打?你会想到什么。要看宾语是什么。
打球
打孩子
打仗
打的
那么如果你是语言学家,你是否要设计多个“打”呢?
我们来看以下程序代码块。
public class Main1 {
public void f() {
}
public void f(int i) {
System.out.println("int");
}
public void f(char i) {
System.out.println("char");
}
public void f(float i) {//想想如何调用该方法
System.out.println("float");
}
public void f(double i) {//在想想如何调用该方法。
System.out.println("double");
}
public static void main(String[] args) {
char c=23;
new Main1().f(c);//此时调用了那个方法f().
}
}
最后说一下,咱们小白每天用的输出方法
System.out.println();
你们说JDK的API中对于输出方法,有必要针对每一种数据类型做一个不同名字的方法吗?
还有你们家的电视遥控器选择频道的时候,如果用面向对象的思维方式你怎么来设计?
针对每一个频道,你都设计一个按钮吗?
是不是我们做一个频道方法()就可以了,我们在调用换频道的方法时候,传递一个频道号码的参数即可。