abstract class A{
public static void fun()
{
System.out.println("Hello world");
}
public abstract void fun1();
class D{
public void fun3(){}
}
abstract class C{
public abstract void fun2();
}
}class B extends A{
public void fun1()
{
System.out.println("世界,我来了");
}
class E extends C
{
public void fun2()
{
System.out.println("黄盼,你好!!!!");
}
}
}
public class xml2{
public static void main(String args[])
{
// A a=new B(); //子类对象为父类实例化
// A b=new B();
// a.C in=b.new E(); //调用被子类覆写过的方法
// in.fun2();
}
}
这个程序中,我只知道有这样的抽象类中含有抽象类的问题,但是我不知道怎样去调用这个抽象类中内部抽象类!!!!!!
public static void fun()
{
System.out.println("Hello world");
}
public abstract void fun1();
class D{
public void fun3(){}
}
abstract class C{
public abstract void fun2();
}
}class B extends A{
public void fun1()
{
System.out.println("世界,我来了");
}
class E extends C
{
public void fun2()
{
System.out.println("黄盼,你好!!!!");
}
}
}
public class xml2{
public static void main(String args[])
{
// A a=new B(); //子类对象为父类实例化
// A b=new B();
// a.C in=b.new E(); //调用被子类覆写过的方法
// in.fun2();
}
}
这个程序中,我只知道有这样的抽象类中含有抽象类的问题,但是我不知道怎样去调用这个抽象类中内部抽象类!!!!!!
B.E e = new B().new E();
e.fun2();
不能向上转型吗,A.E e = new B().new E();
lz应该问的这个意思
abstract class A {
public static void fun() {
System.out.println("Hello world");
} public abstract void fun1(); class D {
public void fun3() {
}
} abstract class C {
public abstract void fun2();
}
}class B extends A {
public void fun1() {
System.out.println("世界,我来了");
} class E extends A.C {
public E(){
}
public void fun2() {
System.out.println("黄盼,你好!!!!");
}
}
}public class xml2 {
public static void main(String args[]) {
A a=new B(); //子类对象为父类实例化
B b=new B();
A.C in=b.new E(); //调用被子类覆写过的方法
in.fun2(); }
}
如下