什么时候可以嵌套类? 我看到它最常见的优点是“共享范围”(跨类使用变量)。
这不仅仅是将嵌套类放在自己的文件中,并通过构造函数传递参数,这不是最佳实践/不是最佳实践吗?
答案 0 :(得分:17)
使用nested classes有几个原因,其中包括:
这是一种仅在一个地方使用的逻辑分组类的方式。
增加封装。
嵌套类可以带来更多可读和可维护的代码。
子类到父类的连接比较简单,因为它直观地说明了每个类的变量和方法。
答案 1 :(得分:1)
除了已经提到的那些,另外一个好处是:
答案 2 :(得分:1)
据我所知,我知道在使用嵌套类的情况下,当我们看到一个对象(OBJ1)与第二个对象(OBJ2)紧密绑定时,我们无法创建没有第二个对象(OBJ2)的第一个对象(OBJ1)。例如,我们有员工对象,一个关联对象是工资,我们不能独立创建工资对象。因为没有雇员,我们要给他们工资 如果我错了,请提供您的反馈。
第二种情况,当我们使用地图或地图时,我们可以使用嵌套类来删除地图的地图,使代码易于理解。
当我们想要向客户端发送数据时,我们可以将其发送到具有所有数据的单个对象中:)
当我们需要可以定义外部类的组件或我们想要定义适配器的东西时。
答案 3 :(得分:0)
当我需要将一组相关字段传递给一个方法并在一个类中的几个方法调用中操作同一组数据时,我发现私有静态类很有用。类似于LinkedList.Node类,它不向外部公开,而是用于将链接分组为一个单元。