java多态实现的方法是什么
Java中实现多态的方法主要有以下两种:
- 方法重写(Override):子类重写父类的方法,实现多态。在父类中定义一个方法,在子类中重写这个方法,并且将这个方法标记为
@Override
。当调用父类的方法时,实际上会调用子类重写的方法。
class Parent {
public void print() {
System.out.println("Parent");
}
}
class Child extends Parent {
@Override
public void print() {
System.out.println("Child");
}
}
public class Main {
public static void main(String[] args) {
Parent obj1 = new Parent();
Parent obj2 = new Child();
obj1.print(); // 输出 "Parent"
obj2.print(); // 输出 "Child"
}
}
- 接口实现(Interface):一个类实现了某个接口,可以通过接口类型来引用该类的对象,实现多态。在接口中定义方法,然后在实现类中实现这些方法。通过接口类型的引用,可以调用实现类中的方法。
interface Printable {
void print();
}
class Parent implements Printable {
@Override
public void print() {
System.out.println("Parent");
}
}
class Child implements Printable {
@Override
public void print() {
System.out.println("Child");
}
}
public class Main {
public static void main(String[] args) {
Printable obj1 = new Parent();
Printable obj2 = new Child();
obj1.print(); // 输出 "Parent"
obj2.print(); // 输出 "Child"
}
}
通过上述两种方法,实现了多态,可以根据对象的实际类型来调用相应的方法,提高代码的灵活性和可扩展性。