//关于super调用构造函数,为什么不成功,请各位进来看看.
public   class   aa 
 { 
 	aa() 
 	{ 
 		System.out.println( "aa的构造函数 "); 
 	} 
 } 
 class   bb   extends   aa 
 { 
 	bb() 
 	{	super(); 
 		System.out.println( "bb的构造函数 "); 
 	} 
 	public   static   void   main(String   args[]) 
 	{ 
 		bb   t=new   bb(); 
 	} 
 }   
 /********************************************************************************* 
 看了好多的书都说: "当你创建一个子类的实例时,首先会调用父类的构造函数,再调用自身的构造函数 " 
 像我上面的这个程序,如果按书上所说应该输出: 
 aa的构造函数 
 aa的构造函数 
 bb的构造函数 
 可是却输出了这样意想不到的结果如下: 
 aa的构造函数 
 bb的构造函数 
 **********************************************************************************/
------解决方案--------------------你如果这样写  b的构造函数 
 bb(){ 
      System.out.println( "bb的构造函数 "); 
   } 
 其实和 
 bb() 
 	{	super(); 
 		System.out.println( "bb的构造函数 "); 
 	} 
 是一样的系统默认给你加上 super() 也就是说会默认先调用父类的构造函数 
 这也就是你看到的书上会写 "当你创建一个子类的实例时,首先会调用父类的构造函数,再调用自身的构造函数 "     
------解决方案--------------------你的程序就应该是这样的结果,你的super()调用的是无参数的构造函数。   
 实例化一个类的时候,系统会检查是否有构造函数,如果没有系统产生一个默认的构造函数,如   
 果定义了构造函数,系统就不会产生默认的构造函数了。
------解决方案--------------------没有参数的构造函数,子类会自行调用,不需要写super(); 
 如果base class 的构造函数带有参数,则在子类的构造函数中一定要调用super(param)   
 你的结果很正常!
------解决方案--------------------结果的确是那样 
 和书上写的 一样