public class A 
{
int i = 10;

public A()
{

}

public void A()
{
System.out.println("KKKK");
}
}这样的把成员函数的名字写成和类名相同提示 A()成员方法:此方法具有构造方法名。对程序有何影响么?

解决方案 »

  1.   

    我认为构造函数和普通的函数并不存在JVM无法区分的情况,所以应该是不受影响。
      

  2.   

    神奇,eclipse中只是提示与构造方法名同。但是执行没有任何问题!
    public class A 
    {
        int i = 10;
        
        public  A()
        {
            
        }
        
        public void A()
        {
            System.out.println("KKKKdfgfdgdfg");
        }
        
        
        
        public static void main(String[] args){
        
        
         A aa=new A();
        
         aa.A();
        
        
        }
    }
      

  3.   

    没有影响
    只是这么写不符合java的编码规范
      

  4.   

    构造方法没有返回值,普通的方法必须要 没有也要用void修饰.
        
      

  5.   

    构造方法没有返回值,而且必须与类名相同,一般的方法必须有返回类型(void也是一种类型)
      

  6.   

    觉得7楼分析正确。
    程序调试结果eclipse提示This method has a constructor name,但是运行成功!
    我觉得此题的关键是理解public void A()这个方法属于构造,还是属于普通函数,只不过函数名与类名相同罢了