【问题标题】:contradicting statement regarding to local class, which one is correct?关于本地类的矛盾陈述,哪一个是正确的?
【发布时间】:2016-01-05 12:37:48
【问题描述】:

我是 Java 新手,正在尝试学习本地类的概念。我目前正在阅读官方 Java 文档 Oracle 上关于本地类的章节。我在本章中遇到了两个似乎相互矛盾的陈述。有知识的人可以帮我看看哪种说法是正确的吗?或者他们都是正确的,只是我对这个概念的理解还没有。

  1. 本地类可以访问本地变量。但是,局部类只能访问声明为 final 的局部变量。

  2. 本地类是非静态的,因为它们可以访问封闭块的实例成员。

https://docs.oracle.com/javase/tutorial/java/javaOO/localclasses.html

【问题讨论】:

    标签: java local-class


    【解决方案1】:

    这些陈述并不矛盾,而且都是正确的。

    实例成员(在第二条语句中提到)不是局部变量(局部变量是某些方法或代码块的局部变量,而实例变量属于类的实例,并且可以从任何非静态访问该类的方法),因此它们可以被本地类访问,无论它们是否是最终的。

    【讨论】:

      猜你喜欢
      • 2011-01-07
      • 2013-01-17
      • 1970-01-01
      • 2013-08-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-01
      • 2021-09-30
      相关资源
      最近更新 更多