关于内部类(static与final)

  Static 不用实例化就能加载进内存

  而内部类需要外部类实例化后才能加载进内存。这就间接造成static需要实例化了。与static不需要实例化语义矛盾

    1、假设外部类没有实例化,

  •     通过类名.调用,这时内部类需要实例化才能进内存,显然外部类没有实例化则static 未进内存,无法直接调用与static 语义,矛盾。

           静态的内部类就没有这一矛盾,不需要实例化就能调用静态变量。

 

    2、假设外部类实力化,

  •     而static 语义是不用通过类的实例化就能使用,所以又产生了矛盾

如果要使用static变量则需要用final修饰,final修饰后变量不在加载类时进内存,而是在加载了类之前进入内存。

最后:局部内部类所在位置方法内的变量不可改变,已被final修饰变成常量。默认有final(1.8之后)。而且只有之中操作方式。

加油   坚持     

转载于:https://www.cnblogs.com/meani/p/11242448.html

内部类不能有静态变量(除静态的对Static的理解)相关推荐

  1. java中静态变量,静态代码块,静态方法,实例变量,匿名代码块的加载顺序

    1. java中静态变量,静态代码块,静态方法,实例变量,匿名代码块 在Java中,使用{}括起来的代码称为代码块,代码块可以分为以下四种: (1)普通代码块:就是类中方法的方法体 public vo ...

  2. Java 静态变量,静态方法,静态常量(java static 关键字)

    Java 静态变量,静态方法,静态常量  就是变量 ,方法,常量前面添加了static 关键字 为什么要使用静态的呢 有时候在处理问题时会需要两个类在同一个内存区域共享一个数据, 不如现在 Main ...

  3. iOS定义静态变量、静态常量、全局变量

    原文链接: iOS定义静态变量.静态常量.全局变量 简书主页:http://www.jianshu.com/users/37f2920f6848 Github主页:https://github.com ...

  4. android 初始化类,Android 常用编程技巧/Java类的初始化顺序 (静态变量、静态初始化块、变量、初始化块、构造器)...

    1.设置屏幕的亮度: WindowManager.LayoutParams lp=getWindow().getAttributes(); lp.screenBrightness=1.0f; getW ...

  5. 今天你的静态变量和静态代码块执行了吗?

    摘要:今天你的静态变量和静态代码块执行了吗? 本文分享自华为云社区<[java]静态变量和静态代码块那些事>,作者: 大金(内蒙的). 今日题目: 今天你的静态变量和静态代码块执行了吗? ...

  6. Java类的初始化顺序 (静态变量、静态初始化块、变量、初始...

    很有意思的一篇文章 1.没有继承 静态变量->静态初始化块->变量->变量初始化块->构造方法 2.有继承的情况 父类静态变量->父类静态初始化块->子类静态变量- ...

  7. Java非静态变量给静态变量赋值

    @Value注解介绍: 作为Spring的一个常用注解,其作用是通过注解将常量.配置文件中的值和其他bean的属性值注入到变量中,作为变量的初始值. @Value("${login.name ...

  8. java 中的静态变量,静态代码块,动态代码块,构造方法执行顺序的深入探究

    要想完全弄懂这个执行顺序,需要我们先了解几个概念. 首先是类加载与对象的构造,类加载就是在第一次调用这个类的时候jvm虚拟机会通过类加载器在一个叫做方法区的逻辑内存中将所要用到的类的信息存放在里边,其 ...

  9. java类的静态成员初始化_Java类的初始化顺序 (静态变量、静态初始化块、变量、初始......

    很有意思的一篇文章 1.没有继承 静态变量->静态初始化块->变量->变量初始化块->构造方法 2.有继承的情况 父类静态变量->父类静态初始化块->子类静态变量- ...

  10. 简述php静态变量,php静态变量小结

    在C 中,内存分成5个区,他们分别是堆.栈.自由存储区(程序代码区).全局/静态存储区和常量存储区. 1.栈,就是那些由编译器在需要的时候分配,在无需的时候自动清除的变量的存储区.里面的变量通常是局部 ...

最新文章

  1. vue实例没有挂载到html上,vue 源码学习 - 实例挂载
  2. 一次综合的、深入浅出的压感的回顾与总结
  3. 计算机视觉目标检测的框架与过程
  4. maplet, power set, domain subtraction,
  5. Powercli的一些使用案例
  6. node 16位 转24位_同时将24位和32位BMP图像顺时针旋转90度
  7. php网页302错误,swfupload提示“错误302”的解决方法
  8. Jquery调用WCF经验分享
  9. java中子类继承父类时是否继承构造函数
  10. python结巴分词的缺点_Python 结巴分词
  11. Adreno Profiler分析任意安卓游戏特效+抓取资源
  12. python图片查看器
  13. 【JAVA】RequestResponse
  14. 网线直接插电脑能上网 接路由器就连不上了
  15. 前端iPhone刘海屏适配
  16. 当代年轻人该如何跨越阶层?
  17. 打开win7任务管理器的六种方法
  18. 基于JSP技术的学生网上选课系统的设计与实现
  19. onvif测试工具的使用教程
  20. Java+Selenium3自动化入门9-Selenium中截图方法-TakeScreenshot

热门文章

  1. mysql 插入数据时,出现\xF0\x5F\x6F\x70问题
  2. jenkins 发送邮件插件Email Extension Template Plugin配置及script pipeline完整脚本
  3. docker容器间双向通信(基于Bridge网桥)
  4. Scala可变数组和不可变数组之间相互转换
  5. Python3字符串切片操作代码示例
  6. Python Django模板语法标签代码示例(页面渲染与取值)
  7. Oracle不带传出参数的存储过程创建及调用
  8. python3遍历技巧
  9. Redis 管道(Pipelining)
  10. FastDFS分布式文件系统工作原理