是否存在在Java中使用内部类而不是子类更有利的情况(反之亦然)?根据我目前的理解,内部类可以访问外部类的字段和方法.这与使用继承有什么不同?
子类通常可以访问标记为public和protected的所有字段/方法.可以使用getter方法在子类中访问父类中标记为private的字段.基于我迄今为止看到的内容,当方法被标记为私有时,它们通常在类的其他方法中被调用,这些方法被标记为public或protected.当然,我不是一个经验丰富的Java程序员,但这似乎是大势所趋.
根据我目前的理解,选择一个在另一个之间似乎没有任何好处.有人可以让我深入了解为什么以及何时应该使用内部类而不是继承(或反之亦然)?