1, String 类中的 + 、 += 操作符重载如何实现的?
2, 类B extends 类A, 请问,B.main(String[] args) 覆盖了  A.main(String[] args) 了么? 可以用在B的main方法中,可以 B.main(args),为什么不可以使用super.main(args)
3, Thinking in java 中说: 对任何活的对象,一定能最终追溯到其存活在堆栈或静态存储区之中的应用,然后根据应用,就可以找出所有活的对象。
      根据内存的使用情况,决定采用“停止-复制”或者“标记-清扫”。那么,目前java虚拟机使用的垃圾收集具体方式是? java的垃圾收集机制往往不可
     信任,那么如何编程,才能保证正确的清理工作???4, 动态帮定的原理是什么?5, java的类和c 的结构题的比较?6, java等面向对象编程语言和C++ c 等语言的比较?呵呵,有些问题重复了, 不过,我想得到 比较全面,详细的答案! 谢谢

解决方案 »

  1.   

    2.静态的东西和覆盖无关。super只能在非static的方法中使用。
      

  2.   

    2、静态方法是属于一个类的,所以不存在覆盖的问题
    不能在main面调用super.main(args)是因为main是static的(this和super)都不能用
      

  3.   

    3.多种垃圾处理方法都用了,sun的hotspot把堆内存非为好多个区,比如有Eden Space (heap) 
    Survivor Space (heap)
    Tenured Generation (heap)
    Permanent Generation (non-heap)
    Code Cache (non-heap)
    不同的区可以采用不同的处理算法。
    参考sun公司的相关白皮书即可。
      

  4.   

    4动态绑定。比如
    class Test{
      public void toString(){
      }
    }Test test = new Test();
    test.toString();
    调用toString方法时,这样查找:
    1.看类型Test中是否定义了toString()方法(根据签名找),如果有,并且是可访问的,那么就调用这个方法,结束查找。
    2.否则,如果Test类有超类,在其直接超类中查找,递归过程。
    3.实在是找不到,没办法,AbstractMethodError
      

  5.   

    关于第三点,建议使用JConsole观察一个具体的程序,可以看到内存的情况和垃圾回收器的活动情况
      

  6.   


    不能在main面调用super.main(args)是因为main是static的(this和super)都不能用4class Test{ 
      public void toString(){ 
      } 
    } Test test = new Test(); 
    test.toString(); 
    调用toString方法时,这样查找: 
    1.看类型Test中是否定义了toString()方法(根据签名找),如果有,并且是可访问的,那么就调用这个方法,结束查找。 
    2.否则,如果Test类有超类,在其直接超类中查找,递归过程。 
    3.实在是找不到,没办法,AbstractMethodError