1 相同点

使用的时候,import的时候,除了包名,还要带外部类。

2 不同点

2.1 对象创建的方式不同

静态内部类创建对象的时候,独立于外部类及其对象,就好像它是一个独立的类,可以和外部类一样使用。

内部类创建对象的时候,不能独立于外部类,必须要先创建外部类的对象,然后再用这个对象来new出内部类的对象。

2.2 内部类不可以有非常量的静态成员

原因很简单,静态成员可以不依赖于对象使用,如果内部类有静态成员的话,就相当于外部类对象直接调用内部类的静态成员,一个是对象,一个是类,不伦不类的。

所以,要给内部类的定义静态成员,必须要使用静态内部类。

报错

The field instance cannot be declared static in a non-static inner type, unless initialized with a constant expression

就算是内部类用了静态的常量,也没有什么用,在外面也不能脱离了内部类对象访问。

转载于:https://www.cnblogs.com/hustdc/p/8894073.html

java内部类和静态内部类的区别相关推荐

  1. java 内部类和静态内部类的区别

    private class InnerClass {         // 只有在静态内部类中才能够声明或定义静态成员         // private static String tt = &q ...

  2. Java面试题—内部类和静态内部类的区别

    内部类和静态内部类的区别 内部类: 1.内部类中的变量和方法不能声明为静态的. 2.内部类实例化:B是A的内部类,实例化B:A.B b = new A().new B(). 3.内部类可以引用外部类的 ...

  3. 静态属性_Java面试题—内部类和静态内部类的区别

    内部类和静态内部类的区别 内部类: 1.内部类中的变量和方法不能声明为静态的. 2.内部类实例化:B是A的内部类,实例化B:A.B b = new A().new B(). 3.内部类可以引用外部类的 ...

  4. java 静态内部类 内部类_Java中内部类和静态内部类的区别

    内部类和静态内部类 示例 public class OuterClass { private int numPrivate = 1; public int numPublic = 2; public ...

  5. Java内部类介绍 - 静态内部类和成员内部类

    文章目录 内部类 内部类概述 静态内部类 成员内部类 内部类 内部类概述 内部类就是定义在一个类里面的类,里面的类可以理解成(寄生),外部类可以理解成(宿主). // 外部的People类可以理解成宿 ...

  6. Java内部类与静态内部类

    http://hi.baidu.com/zhumulangma/item/bcd478c140427b2cef466532 定义在一个类内部的类叫内部类,包含内部类的类称为外部类.内部类可以声明pub ...

  7. 内部类与静态内部类区别及举例

    文章目录 1.内部类与静态内部类的区别 2.举例说明 2.1 内部类 2.2 静态内部类 1.内部类与静态内部类的区别 静态内部类相对与外部类是独立存在的,在静态内部类中无法直接访问外部类中的变量.方 ...

  8. java 内部类_java的内部类和静态内部类(嵌套类)

    背景 开发新项目,写Swager的mode的时候用到了嵌套Model,于是在代码中,出现了静态内部类.在codeReview的时候稍微和大家聊了一下.尤其是Static 修饰类和修饰对象和变量不一样呢 ...

  9. java静态内部类有什么好处6_java的内部类和静态内部类(嵌套类)

    背景 开发新项目,写Swager的mode的时候用到了嵌套Model,于是在代码中,出现了静态内部类.在codeReview的时候稍微和大家聊了一下.尤其是Static 修饰类和修饰对象和变量不一样呢 ...

最新文章

  1. jquery的基本api
  2. 如何快速搭建一个简约美观的在线互动教室?
  3. 开源版本_开源版本PowerShell Core 6.2 发布
  4. java保存base64图片_java保存base64位的图片,并且用时间文件夹分割
  5. 711 发送请求失败_会不会存在不失败的代理IP?
  6. spss22.0统计分析从入门到精通_数据分析最全资料:SPSS/MATLAB/SQL/SAS/EXCEL经典教材+视频教程,快速入门!...
  7. 这几道 C/C 题涉及你的知识盲区?
  8. MySQL服务器地址为空,C++/MySQL - 通过主机地址访问数据库时'未知的MySQL服务器主机';没有IP...
  9. c# Winform 开发分屏显示应用程序
  10. C++ 调用 python
  11. BackgroundWorker线程控件用法
  12. 人工合成生命的最新进展比AI还快
  13. 边缘检测——Roberts算子
  14. CAD关于文字样式删除文字样式操作(com接口c#语言)
  15. 基于安卓Android平台的数独游戏的开发
  16. CodeCademy | Python | 6. Pyglatin
  17. Python 相异性矩阵计算
  18. 普通高中机器人竞赛的现状、问题、对策
  19. linux服务器强制关机,Mac强制关机的4种方法以备不时之需
  20. STM32驱动_cc2420

热门文章

  1. “我在苹果商店下载了一个诈骗 App,损失 60 万美金!”
  2. 程序员霸榜 2020 年十大高薪岗位,不料幸福度却垫底了!
  3. 吐血整理:手拿几个大厂 Offer 的秘密武器!
  4. 贝叶斯定理:AI 不只是个理科生 | 赠书
  5. 厉害了!他是Facebook 开国元老,30 分钟解决 Instagram 服务器挂机
  6. 区块链100讲:智能合约审计指南
  7. shell脚本常用脚本:while
  8. 不可不知的sudo命令
  9. DIV + CSS布局的一些知识汇总
  10. 部署P2P扩容的脚本