java - 如何找到成员所属的对象
问题描述
class MySchool {
ArrayList<MyTeacher> teacher;
...
}
class MyTeacher {
...
}
当我对 MyTeacher 的实例进行一些处理时,如何找到它们所属的 MySchool 的实例?MyTeacher 不是独立存在的,它们是由 MySchool 创建的,但是我不想让 MyTeacher 成为 MySchool 的子类,因为这会混淆程序的其他部分。
我可以在 MyTeacher 的每个实例中保存对 MySchool 的引用,但这似乎有点不雅,我想知道是否有一个简单的函数可以告诉我。
谢谢您的帮助。
解决方案
实际上,参考是正常的做法。每个老师都可以有一个学校,这在所有老师之间不是唯一的,所以要知道那个学校,应该添加一个参考。我不明白为什么这不优雅。
此外,教师可能没有学校,因此将参考设为空,或者如果教师可以拥有多个学校,则需要学校列表作为参考。
如果你真的不想要这个参考,另一种选择是遍历所有学校,搜索你感兴趣的老师。如果一个老师只能在一所学校任教,你可以在找到老师时停止搜索,否则你必须在遍历所有学校和教师的同时构建列表。这是一个非常不优雅的解决方案,只有在想要最小化内存时才应该使用。处理时间可以大大增加。
推荐阅读
- parallel-processing - 如何加快请求查询?
- php - 将搜索查询转换为 1 和 0 并用作变量
- python - 按钮小部件添加新图而不是替换旧图
- html - 如何确定移动设备的精确像素测量值?
- javascript - 如何将对象作为道具传递给 React.js 中的子功能组件?
- android-studio - Android Studio 4.1 - 加载 Studio 时出错(JAVA_HOME & JVM)
- c# - ASP.NET MVC:如何从搜索结果中获取文章的 url?
- python - 如何在 OpenCV Python 中更改颜色?
- vb6 - 可以从 Visual Basic 6 调用 taglib-sharp 吗?
- sql - Sqlite 使用绑定参数查询没有结果,适用于具有硬编码值的相同查询