01_例子


跟C++很像,不列举了
说一下重载
02_重载
判断Java方法是否重载主要看方法名相同,参数列表不同。以下是具体规则:
1.方法名必须完全相同 大小写敏感,同名是重载的前提。
2.参数列表必须不同 满足以下任一条件即可:
① 参数类型不同
② 参数顺序不同(类型组合顺序)
③ 参数个数不同
3.与返回值、访问修饰符、异常无关
仅参数列表影响重载,返回值类型不同、访问修饰符不同或抛出异常不同都不算重载。
简单记忆:重载是编译时多态,编译器根据传入参数就能确定调用哪个方法。
举个例子:
java
public class Example {
// 参数个数不同:重载
void show(int a) { }
void show(int a, int b) { }
// 参数类型不同:重载
void show(String s) { }
void show(double d) { }
// 参数顺序不同:重载
void show(int a, String s) { }
void show(String s, int a) { }
// 仅返回值不同:编译错误,不是重载
// int show() { return 1; }
// void show() { }
}
03_方法的值传递

调用change方法前:100
调用change方法后:100

调用change方法前:20
调用change方法后:200
数组是引用数据类型,形参和实参指向同一个地址,当形参修改时,实参的值也会修改,
而 int a = 100,这种是基本数据类型,形参的改变不会影响实参