Static class 与non static class的区别
来源:互联网 发布:网络本科需要统考么 编辑:程序博客网 时间:2024/06/10 01:58
内部静态类不需要有指向外部类的引用。但非静态内部类需要持有对外部类的引用。非静态内部类能够访问外部类的静态和非静态成员。静态类不能访问外部类的非静态成员。他只能访问外部类的静态成员。一个非静态内部类不能脱离外部类实体被创建,一个非静态内部类可以访问外部类的数据和方法,因为他就在外部类里面。
根据Oracle官方的说法:
Nested classes are divided into two categories: static and non-static. Nested classes that are declared static are called static nested classes. Non-static nested classes are called inner classes.
从字面上看,一个被称为静态嵌套类,一个被称为内部类。
从字面的角度解释是这样的:
什么是嵌套?嵌套就是我跟你没关系,自己可以完全独立存在,但是我就想借你的壳用一下,来隐藏一下我自己(真TM猥琐)。
什么是内部?内部就是我是你的一部分,我了解你,我知道你的全部,没有你就没有我。(所以内部类对象是以外部类对象存在为前提的)
简单理解就是:如果把类比喻成鸡蛋,内部类为蛋黄,外部类是蛋壳。那么静态类相当于熟鸡蛋,就算蛋壳破碎(外部类没有实例化),蛋黄依然完好(内部类可以实例化);而非静态类相当于生鸡蛋,蛋壳破碎(无实例化),蛋黄也会跟着xx(不能实例化)。
3 0
- Static class 与non static class的区别
- Static class 与non static class的区别
- Static class 与non static class的区别
- Static class 与non static class的区别
- 12. Static class 与non static class的区别。
- Java 中 Static class 与non static class的区别
- non-static inner class
- java-基础-Interface、abstract类、Static class 、non static class的区别
- static nest class 与 inner class的区别
- static与non-static的区别
- static与non-static的区别
- static 与 non-static 的区别
- Java中的static Class和non static Class
- Non-static Nested Class or Static Nested Class
- Swift中class func与static func的区别
- Swift_关键字static和class的区别
- 关键字static和class的区别
- Inner class 的 static
- 欢迎使用CSDN-markdown编辑器
- 图片 处理地址 压缩图片和批量修改后缀名
- android 的四种枚举Context.MODE_PRIVATE
- Android基础入门教程——2.4.12 ExpandableListView(可折叠列表)的基本使用
- Android实战简易教程<二十七>(Android设置头像上传功能实现)
- Static class 与non static class的区别
- poj3698(二分图最大匹配 + 拆点)
- 构建自己的Camera应用程序
- Android项目上传到SVN,需要上传的文件和不需要上传的文件
- AT 命令发送中文短信
- Android动态设置控件大小以及设定margin以及padding值
- Android音频实时传输与播放(二):服务端
- uvalive 3490
- android 定义颜色color时6位或8位值的区别