class A
{
public void fun1()
{
System.out.println("<----A------>");
}
public void fun2()
{
System.out.println("<----B------>");
}
}
class B extends A
{
public void fun1()
{
System.out.println("<----C------>"); //方法的覆写
}
public void fun3()
{
System.out.println("<----D------>");
}
}
class C extends A
{
public void fun1()
{
System.out.println("<----E------>"); //方法的覆写
}
public void fun4()
{
System.out.println("<----F------>");
}
}
public class test39 {
public static void main(String args[])
{
fun(new A()); //传递A类型,向上转型
fun(new B()); //传递B类型,向上转型
fun(new C()); //传递C类型,向上转型
}
public static void fun(A a)
{
a.fun1();
}
}