在Java中,通常在上面编写主要方法(或者至少我这样做),并且在这些方法中,即使在下面声明它们各自的类,也会创建对象.为什么不会导致编译错误?我知道java不是程序性的,但我从来没有找到答案.
public static void main (String[] args)
{
baby1 obj1 = new baby1();
baby2 obj2 = new baby2();
}
class baby1
{
//some code
}
class baby2
{
//some code
}
Run Code Online (Sandbox Code Playgroud)
小智 6
Java使用多个传递进行名称解析.第一个传递是"定义传递",它扫描源程序并在表中存储类,字段和方法.在下一个传递("解析通过")中,如果遇到类,它将在上一个传递中创建的表中查找该类.如果该类在那里,它会继续,否则会抛出错误.
但是,本地变量声明不会发生这种情况.在声明之前,您不能使用局部变量.
| 归档时间: |
|
| 查看次数: |
103 次 |
| 最近记录: |