js如果需要实现方法重载
示例 1:根据参数数量实现重载
function overloadExample() {
if (arguments.length === 1) {
console.log('一个参数:', arguments[0]);
} else if (arguments.length === 2) {
console.log('两个参数:', arguments[0], arguments[1]);
} else {
console.log('未知数量的参数');
}
}
overloadExample(1); // 输出: 一个参数: 1
overloadExample(1, 2); // 输出: 两个参数: 1 2
overloadExample(1, 2, 3); // 输出: 未知数量的参数
示例 2:根据参数类型实现重载
function overloadExample(param) {
if (typeof param === 'string') {
console.log('参数是字符串:', param);
} else if (typeof param === 'number') {
console.log('参数是数字:', param);
} else {
console.log('参数是其他类型:', param);
}
}
overloadExample('hello'); // 输出: 参数是字符串: hello
overloadExample(42); // 输出: 参数是数字: 42
overloadExample(true); // 输出: 参数是其他类型: true
Java 支持方法重载(Method Overloading),这是面向对象编程中的一个重要特性
示例 1:参数数量不同
public class OverloadExample {
// 方法 1:接受一个整数参数
public void print(int num) {
System.out.println("整数: " + num);
}
// 方法 2:接受两个整数参数
public void print(int num1, int num2) {
System.out.println("两个整数: " + num1 + ", " + num2);
}
}
public class Main {
public static void main(String[] args) {
OverloadExample example = new OverloadExample();
example.print(10); // 调用方法 1
example.print(10, 20); // 调用方法 2
}
}
示例 2:参数类型不同
public class OverloadExample {
// 方法 1:接受一个整数参数
public void print(int num) {
System.out.println("整数: " + num);
}
// 方法 2:接受一个字符串参数
public void print(String str) {
System.out.println("字符串: " + str);
}
}
public class Main {
public static void main(String[] args) {
OverloadExample example = new OverloadExample();
example.print(10); // 调用方法 1
example.print("Hello"); // 调用方法 2
}
}