Class A{ Void cry(){ } } Class D extends A{ Void cry(){ System.out.println(“这是狗的叫声:汪汪汪”); } } class C extends A { void cry()( System.out.println("这是猫的叫声:喵喵喵”); } } public class Test{ public static void main(String args[]){ A a=new D(); a.cry(); a=new C(); a.cry(); } }
时间: 2024-03-15 08:42:02 浏览: 38
java-polymorphism.zip_class A
这段代码使用了继承的概念,类D和类C都继承了类A的cry()方法,并在自己的类里重写了该方法。在Test类里,首先创建了一个类D的对象a,然后调用a的cry()方法,输出了“这是狗的叫声:汪汪汪”。接着又创建了一个类C的对象a,调用a的cry()方法,输出了“这是猫的叫声:喵喵喵”。因为类D和类C都继承了类A的cry()方法,所以可以用类A的引用来引用类D和类C的对象,并调用它们各自的cry()方法。
阅读全文