加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 内部类太多了?

发布时间:2020-12-14 19:27:59 所属栏目:Java 来源:网络整理
导读:我了解到当一个对象与另一个对象密切相关时,将使用内部类.所以一个LinkedList类可能包含一个内部的Node类,因为每个Node只存在于它的LinkedList中. 我正在考虑制作游戏,并且正在考虑制作一个Map对象,并使用一个双数组的Tile,每个Tile是一个内部类. 但是后来我
我了解到当一个对象与另一个对象密切相关时,将使用内部类.所以一个LinkedList类可能包含一个内部的Node类,因为每个Node只存在于它的LinkedList中.

我正在考虑制作游戏,并且正在考虑制作一个Map对象,并使用一个双数组的Tile,每个Tile是一个内部类.

但是后来我觉得真的,Map类应该是Game类内的一个内部类.

所以我们有

class Game {
  class Map {
    Tile[][] grid;
    class Tile {
      ...
    }
  ...
  }
  class Unit {
    ...
  }
  class Player {
    ...
  }
  ...
}

然而,这似乎是过度的,因为它只能产生一个大量的文件.这是个问题吗?还是我完全误解内在的课程?

当选择内部或外部新类时,应该考虑什么因素,如果选择是内在的,内部类应该什么时候是静态的?

解决方法

什么时候使用内在的类是与科学一样多的艺术.基本上看看你的代码文件有多大,每个类都有多大.如果一个类是大而复杂的,它应该在自己的文件中.如果它很小(例如监听器接口的单个??函数实现),并且在其他地方重新使用,那么它应该是一个内部类.

实际上重用可能是最重要的标准之一.任何可以重新使用的东西都应该重新使用,并应适当地限定范围.

内部类的一个重要优点是它们可以帮助封装,保持类的内部实现.如果其他类不需要知道你的内部类(或者在某些情况下它们存在),那么这是他们内在的一个很好的理由.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读