在java中,主方法通常写在上面(或者至少我是这样做的),在这些方法中,对象被创建,即使它们各自的类被声明在下面。为什么它不会导致编译错误?我知道java不是程序化的,但是我从来没有找到一个答案。
public static void main (String[] args)
{
baby1 obj1 = new baby1();
baby2 obj2 = new baby2();
}
class baby1
{
//some code
}
class baby2
{
//some code
}
1条答案
按热度按时间pkmbmrz71#
java使用多个传递来解析名称。第一个过程是“定义过程”,它扫描源程序并在表中存储类、字段和方法。在下一个过程(“解析过程”)中,如果遇到类,它会在上一个过程中创建的表中查找该类。如果类在那里,它将继续,否则它将抛出一个错误。
但局部变量声明不会发生这种情况。在声明局部变量之前,不能使用它。