子类实现父类方法可以用public static class B extend A
{
     doSomething()
     { super.doSomething();}
 
}

解决方案 »

  1.   

    JAVA里面没有virtual关键字,怎么实现的多态呢?1.没有。
    2.你继承后,并重新书写父类的方法,jvm自动多态处理。
      

  2.   

    如果不显示调用 super.doSomething(); 那么父类代码将不会被执行,也就是子类覆盖了父类的实现。
      

  3.   

    java都是多态的,不象c++。
      

  4.   

    当然是调用的 B,C 的方法!
    不过你应该使用 interface 的!
    还有就是,你的例子实在是错误太多了!
    改正如下:
    public class M
    {
        static class A
        {
          public void doSomething()
          {
           System.out.println("do a");
          }
        }    static class B extends A
        {    
           public void doSomething()
           {
            System.out.println("do b");
           }
        }   static class C extends A
       {
         public void doSomething()
         {
           System.out.println("do c");
         }
        
       }
       public static void main(String[] args)
       {
          A obj=new B();
          A obj1=new C();
          obj.doSomething();
          obj1.doSomething();
       }
    }
      

  5.   

    稍微改改了程序!
    public class M
    {
        static class A
        {
          public void doSomething()
          {
           System.out.println("do a");
          }
          public static void doStatic()
          {  
           System.out.println("do static a");
    }
        }    static class B extends A
        {    
           public void doSomething()
           {
            System.out.println("do b");
           }
            public  static void doStatic()
          {  
           System.out.println("do static b");
    }
        }   static class C extends A
       {
         public void doSomething()
         {
           System.out.println("do c");
         }
          public static  void doStatic()
          {  
           System.out.println("do static c");
    }
        
       }
       public static void main(String[] args)
       {
          A obj=new B();
          A obj1=new C();
          obj.doSomething();
          obj1.doSomething();
          obj.doStatic();
          obj1.doStatic();
       }
    }
    发现 obj,obj1 调用了 Class A 的 doStatic 方法!
    大家想得到吗????----我是真的很诧异!
      

  6.   

    有多态性,不过不是用virtual 而是 abstract 关键字来实现
      

  7.   

    在java中,不需要声明一个方法是virtual的,virtual是java的默认行为,如果你不想让一个方法成为virtual的,那你就在它的前面贴一个final的标签.c++和java正好相反,它默认不是virtual的.你的示例中调用的是子类的方法.
      

  8.   

    老大,java是oo語言,難道會不支持多態?
      

  9.   

    缺省就是多态的,Java的方法缺省就是C++的虚函数(java的抽象方法相当于C++的纯虚函数)。
      

  10.   

    public class M
    {
        static class A
        {
    .........对嘛??我怎么感觉不对...不是一个类中不能包含别的类嘛???你们说说???
    奇怪...?
      

  11.   

    当然可以
    Inner classes( 内隐类)
      

  12.   

    为什么总有人带着C++学JAVA???
    !!!
    sigh