我们可以在 Java 中重载接口的方法吗?
java 8object oriented programmingprogramming更新于 2025/11/15 11:56:17
多态性是对象根据上下文执行不同操作(或表现出不同行为)的能力。
重载是实现多态性的机制之一,其中一个类包含两个具有相同名称和不同参数的方法。
每当您调用此方法时,方法主体都会根据参数与方法调用绑定。
示例
在下面的 Java 程序中,Calculator 类有两个名为 addition 的方法,唯一的区别是一个包含 3 个参数,另一个包含 2 个参数。
在这里,我们可以通过传递两个整数或三个整数来调用加法方法。根据我们传递的整数值的数量,将执行相应的方法。
public class Calculator {
public int addition(int a , int b){
int result = a+b;
return result;
}
public int addition(int a , int b, int c){
int result = a+b+c;
return result;
}
public static void main(String args[]){
Calculator cal = new Calculator();
System.out.println(cal.addition(12, 13, 15));
}
}
输出
40
接口的重载方法
是的,您可以在接口中使用重载方法(具有相同名称但不同参数的方法)。您可以实现此接口并通过其方法实现方法重载。
示例
import java.util.Scanner;
interface MyInterface{
public void display();
public void display(String name, int age);
}
public class OverloadingInterfaces implements MyInterface{
String name;
int age;
public void display() {
System.out.println("This is the implementation of the display method");
}
public void display(String name, int age) {
System.out.println("Name: "+name);
System.out.println("Age: "+age);
}
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
System.out.println("Enter your name: ");
String name = sc.next();
System.out.println("Enter your age: ");
int age = sc.nextInt();
OverloadingInterfaces obj = new OverloadingInterfaces();
obj.display();
obj.display(name, age);
}
}
输出
Enter your name: Krishna Enter your age: 25 This is the implementation of the display method Name: Krishna Age: 25

