本帖最后由 java2000_net 于 2008-08-05 15:01:20 编辑

解决方案 »

  1.   

    printsuperclass(?????); 
    这句话应该怎么改 
    请个位大大 赐教!!!!!!!!!
      

  2.   


     private static void printsuperclass(Object a) {
            Class className=a.getClass();     
            System.out.println(className.getName());
            while(!className.getName().equals("A")){
                className=className.getSuperclass();
                System.out.println(className.getName());
            }
        }
      

  3.   

    printsuperclass(a.getClass().getSuperclass())
      

  4.   

    注意字符串判读相等不能a.getClass().getSuperclass().getName()!="A"这样
      

  5.   

    只要依次输出父类就可以了 D C B A
      

  6.   

    ZangXT  的  好像有用
      

  7.   


    public static void print(Object o) {
    Class c = o.getClass();
    while (!c.equals(Object.class)) {
    System.out.println(c.getSimpleName());
    c = c.getSuperclass();
    }
    System.out.println(c.getSimpleName());
    }这样?
      

  8.   


    class A {
    }class B extends A {
    }class C extends B {
    }class  D extends C {
    }public class Test{
    static int i=0;
    public static void main(String[] args) {
    D d=new D();
    printsuperclass(d.getClass());
    } private static void printsuperclass(Class a) {
    if(i<5){
    if (!a.getName().equals("A")) {
    i++;
    System.out.println(a.getName());

    printsuperclass(a.getSuperclass());
    } else
    System.out.println("A");
    }
    }
    }仅供参考