类循环引用的原因?

2023-12-29

我知道循环引用(A 类持有 B 类,B 类持有 A 类)。但由于我的编程还不够,我很难找到使用它们的理由。我想知道人们是否可以给我一些例子并解释使用它们的充分理由。

就我而言,现在我正在查看 2D 源代码教程,用户创建了一个相互引用的 Creature 和 CreatureAi 类。是什么原因?我还不知道,这就是为什么我正在寻找示例并仍在四处阅读。


您有一个公司类,其中包含为其工作的个人列表。集合中的每个个人类实例都包含对其工作的公司的引用。

通过这种方式,您可以轻松找到哪些人为哪些公司工作。请注意,它可能不一定是最佳设计,特别是如果使用 ORM 或文档数据库将类持久保存到数据库中。

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

类循环引用的原因? 的相关文章

  • Android:如何暂停和恢复可运行线程?

    我正在使用 postDelayed 可运行线程 当我按下按钮时 我需要暂停并恢复该线程 请任何人帮助我 这是我的主题 protected void animation music6 music4 postDelayed new Runnab
  • 使用 proguard 混淆文件名

    我正在使用 proguard 和 Android Studio 混淆我的 apk 当我反编译我的apk时 我可以看到很多文件 例如aaa java aab java ETC 但我项目中的所有文件都有原始名称 有没有办法混淆我的项目的文件名
  • 非易失性领域的出版与阅读

    public class Factory private Singleton instance public Singleton getInstance Singleton res instance if res null synchron
  • 在不支持 CAS 操作的处理器上进行 CompareAndSet

    今天 我在一次采访中被问到下一个问题 如果您在具有不支持 CAS 操作的处理器的机器上调用 AtomicLong 的compareAndSet 方法 会发生什么情况 您能否帮我解决这个问题 并在可能的情况下提供一些全面描述的链接 From
  • 为什么在 10 个 Java 线程中递增一个数字不会得到 10 的值?

    我不明白 a 的值为0 为什么 a 不是10 那段代码的运行过程是怎样的 是否需要从Java内存模型来分析 这是我的测试代码 package com study concurrent demo import lombok extern sl
  • 查看Java Agent修改的Java类的源代码

    我需要了解 Java 代理如何修改我的初始类 以便我能够理解代码的作用 build gradle configurations jar archiveName agent2 jar jar manifest attributes Prema
  • 有人用过 ServiceLoader 和 Guice 一起使用吗?

    我一直想通过我们的应用程序 构建系统进行更大规模的尝试 但更高的优先级不断将其推到次要地位 这似乎是加载 Guice 模块的好方法 并且避免了关于 硬编码配置 的常见抱怨 单个配置属性很少会自行更改 但您几乎总是会有一组配置文件 通常用于不
  • 什么是内部类的合成反向引用

    我正在寻找应用程序中的内存泄漏 我正在使用的探查器告诉我寻找这些类型的引用 但我不知道我在寻找什么 有人可以解释一下吗 Thanks Elliott 您可以对 OUTER 类进行合成反向引用 但不能对内部类实例进行合成 e g class
  • 我对线程失去了理智

    我想要这个类的对象 public class Chromosome implements Runnable Comparable
  • 自定义列表字段点击事件

    我正在编写一个应用程序 其中我创建了用于显示列表视图的自定义列表字段 我的 CustomListField 包含连续的一个图像和文本 我正在通过单击列表字段行获取字段更改侦听器 但我也想将字段更改侦听器放在图像上 谁能告诉我我该怎么做 这是
  • 使用 OkHttp 下载损坏的文件

    我编写的下载文件的方法总是会产生损坏的文件 public static String okDownloadToFileSync final String link final String fileName final boolean te
  • 使用 JDBC 连接到 PostgreSql 的本地实例

    我在 Linux 机器上有一个正在运行的 PostgreSql 本地实例 当我使用psql来自 shell 的命令我成功登录 没有任何问题 我需要通过 JDBC 连接到 PostgreSql 但我不知道我到底应该传递什么url参数为Driv
  • UseCompressedOops JVM 标志有什么作用以及何时应该使用它?

    HotSpot JVM 标志是什么 XX UseCompressedOops我应该做什么以及什么时候使用它 在 64 位 Java 实例上使用它 与不使用它 时 我会看到什么样的性能和内存使用差异 去年大多数 HotSpot JVM 都默认
  • Android - 存储对ApplicationContext的引用

    我有一个静态 Preferences 类 其中包含一些应用程序首选项和类似的内容 可以在那里存储对 ApplicationContext 的引用吗 我需要该引用 以便我可以在不继承 Activity 的类中获取缓存文件夹和类似内容 你使用的
  • Java 8 Stream,获取头部和尾部

    Java 8 引入了Stream http download java net jdk8 docs api java util stream Stream html类似于 Scala 的类Stream http www scala lang
  • 用于请求带有临时缓存的远程 Observable 的 RxJava 模式

    用例是这样的 我想暂时缓存最新发出的昂贵的Observable响应 但在它过期后 返回到昂贵的源Observable并再次缓存它 等等 一个非常基本的网络缓存场景 但我真的很难让它工作 private Observable
  • 使用 Apache 允许 Glassfish 和 PHP 在同一服务器中协同工作

    是否可以建立从 Java 到 php 文件的桥梁 我有一个用 Java 编写的应用程序 我需要执行http piwik org http piwik org 这是用 PHP 编写的 在服务器中 我正在运行 PHP 但无法从浏览器访问 php
  • 检测到 JVM 正在关闭

    我有一个使用 addShutdownHook 处理 Ctrl C 的 Swing 应用程序 它工作正常 直到我的关闭任务之一调用一个在正常情况下更改 JLabel 文本的函数 此时它挂起 我认为问题是 Swing EDT 已终止或正在等待某
  • 如何让 Firebase 与 Java 后端配合使用

    首先 如果这个问题过于抽象或不适合本网站 我想表示歉意 我真的不知道还能去哪里问 目前我已经在 iOS 和 Android 上开发了应用程序 他们将所有状态保存在 Firebase 中 因此所有内容都会立即保存到 Firebase 实时数据
  • 在会话即将到期之前调用方法

    我的网络应用程序有登录的用户 有一个超时 在会话过期之前 我想执行一个方法来清理一些锁 我已经实现了sessionListener但一旦我到达public void sessionDestroyed HttpSessionEvent eve

随机推荐

  • 从 redis pub/sub 中断开的连接中恢复

    我正在运行连接到 redis 数据库的客户端 客户端使用 WiFi 连接 有时会断开连接 不幸的是 当发生这种情况时 程序只是继续运行而不会抛出任何类型的警告 r redis StrictRedis host XX password YY
  • 从数组中的字典数组获取数据

    我创建了一个Array of Dictionaries let tempArray id 1 Name ABC id 2 Name qwe id 3 Name rty id 4 Name uio 现在我必须创建一个数组Name only 我
  • GooglePlus 与 CocoaPods 链接错误

    我添加到我的 pod 文件中 pod google plus ios sdk 1 4 1 I did a pod update 我导入了 import
  • 代理无法通过 SSL 连接工作

    我正在尝试使用 tor socksipy 和 ssl 来代理 ssl 连接 我的客户看起来像这样 import socks ssl s socks socksocket s setproxy socks PROXY TYPE SOCKS5
  • 如果 内部有多个

    我有一个表列 其中包含多个 div 以适应图标 标题和描述文本 另外 当鼠标悬停时 我需要提供突出显示 覆盖效果 突出显示所有列 包括 div 图像 标题和描述文本 这是 HTML td div style display inline b
  • Python 相当于 Matlab textscan

    我正在将一些 Matlab 代码转移到 Python 我对 Python 比较陌生 不确定是否有与 Matlab 相当的 Pythontextscan http www mathworks com help matlab ref texts
  • Facebook 图形 API 错误

    我正在实现 facebook graph api 来获取用户详细信息 例如名字 电子邮件等 下面是我的代码 nvpreq access token 160370244010460 b8eba6c19f01b271ef0c682e 10000
  • 网格中的复选框控件未触发 fieldupdated 事件

    我在自定义网格上选择的复选框不会触发 Fieldupdated 事件 protected void MyTable Selected FieldUpdated PXCache cache PXFieldUpdatedEventArgs e
  • 使用strtok读取csv文件

    我正在尝试使用 C 中的 strtok 来读取 csv 文件 并将内容存储到 struct Game 的数组中 我的代码如下所示 FILE fp int i 0 if fp fopen Games csv r NULL printf Can
  • 网络状态改变时广播Intent

    当网络状态发生变化 即从 GSM 到 Wifi 时 Android 是否会广播意图 如果是这样 我需要什么许可以及意图操作是什么 Update 请改用这个 https stackoverflow com a 2677519 241869 h
  • 如何通过浏览器javascript访问Docusign API?

    我正在用 Javascript 构建一个基于浏览器的应用程序 我尝试通过 jQuery 访问 docusign api support cors true ajax crossDomain true url https demo docus
  • 找出多态对象的大小

    我有一个指针Base base ptr到多态对象 是否可以找出所述对象的动态类型的大小 AFAIK sizeof base ptr 产生静态类型的大小base ptr 我开始怀疑这是不可能的 但也许我忽略了一些事情 注意 我知道我可以向类型
  • Heroku - 未找到视图 - FileFinderView InvalidArgumentException

    这消耗了我生命的最后两天 本地一切工作正常 但是当我的代码部署到 Heroku 时 Laravel 找不到index看法 据我了解 这是一些缓存问题 因此我尝试了 Artisan 的大部分命令来清理缓存 php artisan config
  • 基于单选的AngularJS Filter

    我正在实现一个搜索输入框 该输入框应该基于正在迭代的对象的特定属性进行搜索 并且我希望使用单选按钮来选择它们 例如 这是我的代码 span style margin bottom 10px display inline block Sear
  • 从 4 个整数的列表生成最大 HH:MM [重复]

    这个问题在这里已经有答案了 注意 另一个问题是这个问题的重复 如果我这个问题比那个问题早 6 个月发布 那么我的问题怎么会是重复的呢 我有 4 个非负整数 a b c d 它们都小于或等于 9 我必须以 24 小时格式返回时钟上可以显示的最
  • 如何构建访问控制列表 (ACL) 的数据模型

    当您只处理对离散资源具有一定访问级别的离散用户时 如何对充当访问控制列表 ACL 的数据库表进行建模是相当明显的 像这样的事情 TABLE acl user id INT resource id INT access type INT 其中
  • jenkins python 模块导入错误

    我已经在虚拟机中安装了 jenkins 模块 但仍然无法导入该模块并使用 Python 2 7 5 默认 2014 年 6 月 17 日 18 11 42 GCC 4 8 2 20140120 红帽 4 8 2 16 在 linux2 上
  • 如何避免 R 中的双重“for”循环

    我必须对数据框 ddf 的所有列组合执行函数 我通常这样做 myfunction lt function col1 col2 print aov col1 col2 ddf data frame first 1 3 second lette
  • 将 Django TimeField 中的时间乘以 float

    我正在尝试将当前表示为字符串的时间读取到 Python 2 7 中的 Django TimeField 模型中 并同时通过浮点数对其进行缩放 例如 00 31 14 1 0617 00 29 20 我已成功读取时间并将其存储到模型中 但无法
  • 类循环引用的原因?

    我知道循环引用 A 类持有 B 类 B 类持有 A 类 但由于我的编程还不够 我很难找到使用它们的理由 我想知道人们是否可以给我一些例子并解释使用它们的充分理由 就我而言 现在我正在查看 2D 源代码教程 用户创建了一个相互引用的 Crea