当前位置: 首页 > 面试题库 >

内部阶级的用法

濮阳立果
2023-03-14
问题内容

我可以理解什么是内部类以及如何编写程序。我的问题是程序员在什么情况下真正需要内部类?


问题答案:

有时,有些功能最好用一个对象来表示,但仅在另一个对象的上下文中才有意义,而不必暴露于外界,并且可以从访问父类数据中受益(以免违反封装)。

我能想到的最好的例子是将Node类放入LinkedList中。节点仅对LinkedList有意义,因此它们仅存在于其中。LinkedList之外的任何人都不会关心节点或应该有权访问它们。



 类似资料:
  • 问题内容: 和声明有什么区别。 问题答案: 与所有通用类型和原始类型相同: 在这种特殊情况下,和之间没有太大的实际区别,因为它们都表示未知的类。根据现有的声明,编译器可以要求使用通用类型而不是原始类型。 但是: 从Java 1.5开始,您应该尽可能使用通用形式。明确指出您的意思是“未知的班级”,明确指出您的意思是该班级。原始可能意味着 两者 。 最后,它对编译器没有太大的影响,但是在使代码的意图更

  • 内存保护单元(Memory Protection Unit) 对于ARM Corte-M3/4F,freeRTOS提供两个版本,一个是不带内存保护的标准版本,一个是带内存保护的freeRTOS-MPU版本。 使用内存保护单元可以从多个潜在的错误中,未被发现的编程错误和硬件故障中保护应用。在任务执行无效的操作时,freeRTOS-MPU可以保护RTOS内核和数据。同样,在任务导致的非预期修改和任务堆

  • 我正在编写使用webendpoint在junit上运行测试的web服务,因此我必须将所有测试保存在源代码中。问题是,我想要从IDEA和命令行直接运行测试,而最后一个我已经塞住了。 如何通过“Gradle Test”在sources文件夹(src/main/java)中运行测试?我和gradle不是一家人,但我试着用 但是它打破了使用IDEA的项目导入,My2016.1.1有时不能创建两个具有相同内

  • 我想从short_name(国家名称)、name(州表)或region_name的任何可用数据中选择post_id。对region_name而不是short_name(国家名称),name(州表)执行以下查询,结果为真。 请告诉我,我哪里弄错了!

  • 我使用Log4j2(v2.17.2)直接向kafka发送信息,并使用XML创建配置(正如许多文章提到的那样,XML可以处理更多的配置选项,而属性不能)。我的问题是,我的控制台中充满了不相关的信息日志行(例如): 我已经从programmetically-change-log-level-in-log4j2中试用了所有技术,没有对日志进行任何更改: 有人有运气从INFO中获得日志级别降低吗?我真的不

  • 问题内容: 在子组件的父项上执行setState的推荐模式是什么? 我有一个待办事项数组,保持在父母的状态。我想访问父项的状态,并从的组件中添加新的待办事项。我的想法是在父对象上执行setState,这将呈现新添加的待办事项。 问题答案: 在您的父级中,您可以创建一个类似的函数,该函数将执行所需的setState,然后将该函数作为prop传递给子组件。 您可以在TodoForm的handleCli