为什么java中外部类不是静态的? [复制]

2023-12-15

在java中,外部类可以是public、final、default或abstract。 为什么不像静态一样

public static class MyClass{}


外部类已经是隐式静态的。

非静态嵌套类(=内部类)意味着内部类隐式地引用其父类。

这就是为什么,对于嵌套类,您可以区分静态和非静态。这对于外部类来说没有意义。

下面是一个示例,用于了解静态/非静态嵌套类之间的区别。您应该理解为什么它在外部类中没有意义。

public class MyClass {

  private String anAttributeOfMyClass;

  private /*static*/ class MyInnerClass {

    public void foo() {
      /*
       * Here, I can access the attribute of the parent class
       * because I implicitly have a reference to it.
       * Try to make the nested class static an see the difference.
       */
      anAttributeOfMyClass.trim();
    }
  }

}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么java中外部类不是静态的? [复制] 的相关文章

  • 清理码头 - 删除“不必要”的东西

    我习惯用Jetty http jetty codehaus org jetty 作为我的网络容器 我对我做了什么安装步骤得到原始的焦油球并且清理一些目录和文件从中 我在这里想提出的是 您通常从 Jetty 中删除什么以在生产 登台环境中使用
  • Android 2.2 SDK - Droid X 相机活动无法正常完成

    我注意到我在 Droid X 上调用的默认相机活动与我的 Droid 和 Nexus One 上的默认相机活动看起来不同 在 Droid 和 Nexus One 上选择 确定 后 活动将完成 Droid X 有一个 完成 按钮 它将带您返回
  • 添加动态数量的监听器(Spring JMS)

    我需要添加多个侦听器 如中所述application properties文件 就像下面这样 InTopics Sample QUT4 Sample T05 Sample T01 Sample JT7 注意 这个数字可以多一些 也可以少一些
  • 使用cameltestsupport进行Camel单元测试,模板始终为空

    我正在用 Camel 做一个简单的单元测试 我想做的就是从文件 在资源下 读取 JSON 内容 将其发送到 Java 类进行验证 这是我试图测试的路线 无论我做什么 模板 我用来发送正文 json 始终为空 这是我的代码 public cl
  • 将 null 转换为对象?

    我今天遇到了这段代码 AsyncInvoke OnTimeMessageTimer object null ElapsedEventArgs null 有没有什么问题 有时 当方法重载时 您需要这样做 以告诉编译器您正在调用哪一个 null
  • Spring安全“记住我”cookie在第一个请求中不可用

    我无法在登录请求后检索 Spring 记住我 cookie 但它在对受保护页面的下一个请求中工作正常 谁能告诉我怎样才能立即得到它 我在登录请求中设置了记住我的 cookie 但在 Spring 重定向回原始 受保护的 url 后无法检索它
  • eclipse中导入项目文件夹图标

    我在 Eclipse 工作区中新导入的 Maven 项目有J and M项目文件夹顶部的图标 项目和包资源管理器 而其他导入的 Maven 项目只有一个J icon 有人可以解释其中的区别吗 该项目有J装饰器被称为 Java 项目和具有M装
  • 在文本文件中搜索单词并返回其频率

    如何在包含单词文本的文本文件中搜索特定单词并返回其频率或出现次数 使用扫描仪 String text Question how to search for a particular word in a text file containin
  • Firestore - RecycleView - 图像持有者

    我不知道如何编写图像的支架 我已经设置了 2 个文本 但我不知道图像的支架应该是什么样子 你能帮我告诉我图像的文字应该是什么样子才能正确显示吗 holder artistImage setImageResource model getArt
  • 记录骆驼路线

    我的项目中有几个 Camel 上下文 如果可能的话 我想以逆向工程方式记录路线 因为我们希望保持与上下文相关的文档最新 最好的方法是什么 我们倾向于预先实际设计路线 并使用来自EIP book http www eaipatterns co
  • 如何在android中设置多个闹钟,在这种情况下最后一个闹钟会覆盖以前的闹钟

    我正在开发一个Android应用程序 用户可以在其中设置提醒时间 但我在以下代码中遇到一个问题 即最后一个警报会覆盖之前的所有警报 MainActivity java public void setreminders DatabaseHan
  • 具有共享依赖项的多模块项目的 Gradle 配置

    使用 gradle 制作第一个项目 所以我研究了 spring gradle hibernate 项目如何组织 gradle 文件 并开始制作自己的项目 但是 找不到错误 为什么我的配置不起作用 子项目无法解决依赖关系 所以项目树 Root
  • Java:正则表达式排除空值

    在问题中here https stackoverflow com questions 51359056 java regexp for a separated group of digits 我得到了正则表达式来匹配 1 到 99 之间的一
  • Java 8 中函数式接口的使用

    这是来自的后续问题Java 8 中的 双冒号 运算符 https stackoverflow com questions 20001427 double colon operator in java 8其中 Java 允许您使用以下方式引用
  • 列表应该如何转换为具体的实现?

    假设我正在使用一个我不知道源代码的库 它有一个返回列表的方法 如下所示 public List
  • Git 无法识别重命名和修改的包文件

    我有一个名为的java文件package old myfile java 我已经通过 git 提交了这个文件 然后我将我的包重命名为new所以我的文件在package new myfile java 我现在想将此文件重命名 和内容更改 提交
  • Espresso 和 Proguard 的 Java.lang.NoClassDefFoundError

    我对 Espresso 不太有经验 但我终于成功地运行了它 我有一个应用程序需要通过 Proguard 缩小才能处于 56K 方法之下 该应用程序以 3 秒的动画开始 因此我需要等到该动画结束才能继续 这就是我尝试用该方法做的事情waitF
  • Linux 上有关 getBounds() 和 setBounds() 的 bug_id=4806603 的解决方法?

    在 Linux 平台上 Frame getBounds 和 Frame setBounds 的工作方式不一致 这在 2003 年就已经有报道了 请参见此处 http bugs java com bugdatabase view bug do
  • 解决错误javax.mail.AuthenticationFailedException

    我不熟悉java中发送邮件的这个功能 我在发送电子邮件重置密码时遇到错误 希望你能给我一个解决方案 下面是我的代码 public synchronized static boolean sendMailAdvance String emai
  • 在哪里存储 Java 的 .properties 文件?

    The Java教程 http download oracle com javase tutorial essential environment properties htmlon using Properties 讨论如何使用 Prop

随机推荐

  • 将组件绘制到 BufferedImage 会导致显示损坏

    我正在使用JScrollNavigator描述的组件here 为了在大型 类似画布 的 CAD 组件上提供导航窗口 我已将其嵌入到JScrollPane 我已经尝试去适应JScrollNavigator绘制画布的缩略图 为用户提供一些额外的
  • 在 qmetry 中的驱动程序之间来回切换

    我有一个要求 我想在多个驱动程序之间切换来执行测试 例如启动 Android 应用程序 执行一些步骤并在桌面浏览器中进行验证 完成后 切换回 Android 应用程序并继续其余流程 可能有多个实例 我必须在多个驱动程序之间切换 Use se
  • 在 Python 中将图像处理为棕褐色调

    我需要帮助弄清楚如何将图像转换为棕褐色 这就是我到目前为止所拥有的 但它只会将所有内容更改为黑色和白色 并带有非常小的棕色色调 我不确定我做错了什么 import image def convertSepia input image gra
  • 使用按位运算符提取位[关闭]

    很难说出这里问的是什么 这个问题模棱两可 含糊不清 不完整 过于宽泛或言辞激烈 无法以目前的形式合理回答 如需帮助澄清此问题以便重新打开 访问帮助中心 我正在尝试学习如何在给定输入上使用按位运算符 但我不太幸运地弄清楚如何使用它们 假设我有
  • 在所有浏览器中使用 javascript 显示或隐藏元素

    这是html代码
  • 根据语义相似性/相关性从列表中删除重复项

    R tm 如何根据语义相似性删除列表中的重复项 v lt c bank banks banking ford suv toyota suv nissan suv 我预期的解决方案是c bank ford suv toyota suv nis
  • 如何找出哪些字体可以显示这些字符?

    Unicode U 26AB Unicode U 26AA 这两个字符可以在终端中显示 我想使用convert imagemagick 命令 将这些文本转换为图片 But convert只能使用一种特殊字体 不能使用后备字体 转换 列表字体
  • 将自定义属性添加到 Boost Graph Library 中网格的顶点

    我在我的机器人项目中使用 Boost Graph Library 进行地图管理 我打算使用 Boost Grid 但发现 Boost Graph 文档真的很难理解 所以我需要一些帮助 这是我创建网格并打印它的方式 struct sample
  • 从Python中打开的文件获取路径

    如果我有一个打开的文件 是否有os调用以获取字符串形式的完整路径 f open Users Desktop febROSTER2012 xls From f 我怎样才能得到 Users Desktop febROSTER2012 xls 这
  • AS3:beginGradientFIll() 不会使我成为渐变!

    我正在尝试用径向渐变渲染一个圆 但我似乎无法弄清楚 var bkgdGrad Shape new Shape bkgdGrad graphics beginGradientFill GradientType RADIAL 0x0000FF
  • requestRouteToHost 在 wifi 接口上返回 false

    公共布尔requestRouteToHost int网络类型 int主机地址 ConnectivityManager 中的此方法如果与设置为 wifi 接口的 networkType 一起使用 则始终返回 false 请求路由到主机 and
  • Android - RecyclerView如何处理具有多个绑定的ViewHolder

    这是我的 onBindViewHolder Override public void onBindViewHolder NonNull RecyclerView ViewHolder holder int position MessageM
  • Android onTaskRemoved() 调用 webservice

    美好的一天 我遇到了可怕的情况 我正在会话中创建位置共享逻辑 我将该会话保留在 mysql 上的服务器上 当 android 命中该活动时 我会插入相应的用户信息 当 android 离开该活动时 我当然会删除该信息列 因此会话被另一侧放弃
  • 计算相似的数组键

    我的一个页面有一个 POST 请求 这里是一小段 shipCountry gt United States status gt Accepted sku1 gt test product1 gt Test Product quantity1
  • 具有可变列名的动态更新语句

    我们希望在多个 SQL Server 数据库中进行更新 将某个表中的所有 NULL 值更改为空字符串而不是 NULL 我们可能会在数百个数据库中执行此操作 表名始终相同 但列名根据前端应用程序的配置方式而变化 不要判断 我没有创建这个系统
  • 如果程序集位于 GAC 中,那么它调用的所有程序集是否也必须位于 GAC 中?

    这个问题说明了一切 GAC 中的程序集不知道您的私有程序集的私有位置 它只了解 GAC 本身 所以它只能引用 GAC 中可用的程序集
  • BigQuery GENERATE_UUID() 和 CTE

    这个行为让我有点惊讶 当您在 CTE 中生成 uuid 以生成行 id 等 并在将来引用它时 您会发现它发生了变化 看起来generate uuid 被调用两次而不是一次 有人知道为什么 BigQuery 会出现这种情况吗 这叫什么 我正在
  • 在java中创建包级关联数组

    是否可以创建包级 oracle 关联数组的 java 表示形式 例如 给定以下情况 CREATE OR REPLACE PACKAGE MyPackage AS TYPE t numbers IS TABLE OF NUMBER INDEX
  • 使用 C++ 获取本地管理员用户名

    我想知道是否可以让女巫用户属于我的本地管理员组并列出它们 有没有办法使用 C 来做到这一点 也许有任何 WinAPI 方式 多谢 您可以使用网络用户获取本地组 and 网络用户获取信息检索您的信息并检查其值usri1 priv in the
  • 为什么java中外部类不是静态的? [复制]

    这个问题在这里已经有答案了 在java中 外部类可以是public final default或abstract 为什么不像静态一样 public static class MyClass 外部类已经是隐式静态的 非静态嵌套类 内部类 意味