关于本地 class 的自相矛盾的说法,哪一个是正确的?
contradicting statement regarding to local class, which one is correct?
我是 Java 的新手,正在尝试学习本地 class 的概念。我目前正在阅读官方 Java Oracle 文档中有关本地 class 的章节。我在本章中遇到了两个似乎相互矛盾的陈述。有懂行的人可以帮我看看哪个说法是正确的吗?或者他们都对,只是我对这个概念的理解还没有。
本地 class 可以访问本地变量。但是,局部 class 只能访问声明为 final 的局部变量。
本地 classes 是非静态的,因为它们可以访问封闭块的实例成员。
https://docs.oracle.com/javase/tutorial/java/javaOO/localclasses.html
这些说法并不矛盾,都是正确的。
实例成员(在第二条语句中提到)不是局部变量(局部变量是局部于某些方法或代码块的变量,而实例变量属于class的实例,并且可以可以从那个 class 的任何非静态方法访问),因此无论它们是否是最终的,它们都可以被本地 classes 访问。
我是 Java 的新手,正在尝试学习本地 class 的概念。我目前正在阅读官方 Java Oracle 文档中有关本地 class 的章节。我在本章中遇到了两个似乎相互矛盾的陈述。有懂行的人可以帮我看看哪个说法是正确的吗?或者他们都对,只是我对这个概念的理解还没有。
本地 class 可以访问本地变量。但是,局部 class 只能访问声明为 final 的局部变量。
本地 classes 是非静态的,因为它们可以访问封闭块的实例成员。
https://docs.oracle.com/javase/tutorial/java/javaOO/localclasses.html
这些说法并不矛盾,都是正确的。
实例成员(在第二条语句中提到)不是局部变量(局部变量是局部于某些方法或代码块的变量,而实例变量属于class的实例,并且可以可以从那个 class 的任何非静态方法访问),因此无论它们是否是最终的,它们都可以被本地 classes 访问。