词汇类似于一类

时间:2015-01-09 08:17:24

标签: java class

这是JLS 8.1.3定义词汇封闭类型概念的方式:

  

类或接口O是第0个词法封闭类型   声明自己。

     

类O是类的第n个词法封闭类型声明   C如果它是n-1'的立即封闭类型声明   词汇封闭C的类型声明。

因此,从这个定义中不清楚是否正在考虑任何内部类,或者仅仅是类或接口O 的内部类。这些是不同的概念,因为最后一个概念定义如下:

  

内部类C是类或接口O的直接内部类,如果   O是C的直接封闭类型声明   C 的声明不会出现在静态上下文中

     

如果类是C,则类C是类或接口O的内部类   直接O的内部类或O的内部类的内部类。

为了更清楚,让我举一个例子:

class A{
    class Bar{ } //inner class of class A

    public static void main(String[] args){
        class Foo{ } //inner class, but not an inner class of class A
    }
}

DEMO

立即封闭类型的definitioin被视为任何内部类或inner classes of class or interface O

1 个答案:

答案 0 :(得分:2)

BarFoo都有A作为紧接着的类型声明。他们处于平等地位。 Foo也被方法声明包围的事实不会影响这一点。