猿问
Java内部类和静态嵌套类
Java内部类和静态嵌套类
Java中的内部类和静态嵌套类之间的主要区别是什么?设计/实施是否在选择其中一个方面发挥作用?
湖上湖
浏览 741
回答 4
4回答
慕尼黑的夜晚无繁华
我认为上述答案都没有向您解释嵌套类和静态嵌套类在应用程序设计方面的真正区别:概观嵌套类可以是非静态的,也可以是静态的,并且在每种情况下都是在另一个类中定义的类。嵌套类应该只存在于封闭类中,如果嵌套类对其他类(不仅是封闭的)有用,则应该声明为顶级类。区别非静态嵌套类:与包含类的封闭实例隐式关联,这意味着可以调用封闭实例的方法和访问变量。非静态嵌套类的一个常见用途是定义Adapter类。静态嵌套类:无法访问封闭的类实例并在其上调用方法,因此在嵌套类不需要访问封闭类的实例时应该使用它。静态嵌套类的一个常见用途是实现外部对象的组件。结论因此,从设计的角度来看,两者之间的主要区别是:非静态嵌套类可以访问容器类的实例,而静态则不能。
0
0
0
随时随地看视频
慕课网APP
相关分类
Java
我要回答