class cricket{
    void bat(){
        System.out.println("sachin");
    }
    public static void main(String ar[]){
        cricket cricket=new cricket();
        cricket.bat();
    }
}


输出:
萨钦



对象名称与类名称相同。.怎么可能。程序给出正确的输出。wt是原因吗?

最佳答案

当Java编译器看到以下内容时:

 cricket cricket=new cricket();


它知道左侧是变量声明,而右侧是构造函数调用,因为在'new'和(之间仅允许使用一个类。

局部变量保存在其他名称空间(“局部块作用域”)中,因此可以正常工作。

但是正如您所注意到的,它使读者感到困惑。这就是Java规则说“大写类名”的原因:

Cricket cricket = new Cricket();


Java编译器完全忽略了大写字母,但对人类读者有很大帮助。

关于java - 在Java中创建对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5583119/

10-11 10:38