首先JAVA语言是严格区分大小写的,而对于方法名我们推荐使用小驼峰命名法,从而与大驼峰命名法的类名并不真正同名。

例如:

class A{
    public void a(){
        //方法体
    }
}

但是如果我们不遵守编程规范,选择以大驼峰命名法的方式命名该方法,我们会发现这样的方法仍然是可以被实现的。

例如:

class A{
    A(){
    //构造器方法
    }
    public void A() {
	    System.out.println("A");//与类同名的普通方法
    }
}

要注意的是该行为会引起编译器的Waring,但是Waring并不会阻止该代码通过编译,并且该代码是可以被正常运行的。

但这并不是一个符合编程规范的行为,所以在编写代码时尽可能的避免该情况的出现。

其次在Eclipse IDE中,可以选择将该情况进行报Waring,Error,或者ignore。

Waring:一个不符合编程规范,可能会导致出错的代码。

Error:无法通过编译,一定会引起出错的代码。

ignore:忽视以上的提示,强行编译。