Static

  static表示静态的意思。

  static关键字可以用于修饰属性,也可以用于修饰方法,还可以用于修饰类。

静态字段

  static修饰的字段称为静态字段静态属性

  静态字段属于类,不属于类中的任何对象。所有对象共同使用唯一一份静态的成员变量。

  如果一个成员变量是static的,那么可以通过:类名.成员变量名的形式使用。(也可以用变量名.成员变量名的形式,但是使用类名更好一些)。

静态方法

  static修饰的方法称为静态方法

  静态方法可以使用类名.方法名的方式来访问。

  静态方法只能继承,不能重写(Override

  多态调用时,静态方法属于一种特殊情况,父类的引用指向子类的对象,调用静态方法时,调用的仍是父类中的版本。因为子类不能覆写父类的静态方法。如果子类和父类中定义了同样的静态方法,起到的仅仅是隐藏的作用。

  (http://www.cnblogs.com/mengdd/archive/2012/12/25/2832288.html)

  静态方法只能访问静态的成员变量,因为非静态的成员与特定的对象相关联,而静态方法并不能明确是哪个对象。

  但是非静态的方法静态非静态的成员都可以访问。

  不能在静态方法中使用this关键字。

static代码块

  静态代码块:

  static

  {

    //内容

  }

  静态代码块的作用一般是完成一些初始化工作。

  静态代码块在类被加载的时候执行。要想调用某个类来生成对象,首先需要将类加载到Java虚拟机(JVM)上,然后用JVM加载这个类来生成对象。

  因为每个类只会被加载一次,所以静态代码块也只会被执行一次。而构造方法是在生成对象的时候被执行,每次生成对象都会调用构造方法。

  如果继承体系中有静态代码块,那么首先执行最顶层的类的静态代码块,一直执行到最底层的类的静态代码块;然后再去执行最顶层的类的构造方法,一直执行到最底层的类的构造方法。注意,静态代码只会执行一次。

  如果有多个static代码块,JVM将按照它们在类中出现的顺序依次执行它们。

  补充说明一下:如果有非静态的初始化语句,这些语句将在构造方法之前执行。

Java中的static相关推荐

  1. 面试季,Java中的static关键字解析

    点击上方"方志朋",选择"置顶或者星标" 你的关注意义重大! static关键字是很多朋友在编写代码和阅读代码时碰到的比较难以理解的一个关键字,也是各大公司的面 ...

  2. Java中的static关键字详解

    ** Java中的static关键字详解 ** 在一个类中定义一个方法为static,即静态的,那就是说无需本类的对象就可以调用此方法.调用一个静态方法就是 "类名.方法名" ,静 ...

  3. Java中的static关键字解析 转载

    原文链接:http://www.cnblogs.com/dolphin0520/p/3799052.html Java中的static关键字解析 static关键字是很多朋友在编写代码和阅读代码时碰到 ...

  4. java aio为什么不稳定_为什么我不提倡在Java中使用static

    static从Java1.0开始便是Java中的关键字,用于表征静态属性或方法.它也得到了广泛的应用,在业务中定义XXXUtil是一种常规的模式,甚至是比较知名的类库(比如Apache Common ...

  5. 二十五、深入Java中的static静态修饰符

    @Author:Runsen @Date:2020/6/2 作者介绍:Runsen目前大三下学期,专业化学工程与工艺,大学沉迷日语,Python, Java和一系列数据分析软件.导致翘课严重,专业排名 ...

  6. [转] Java中的static关键字解析

    Java中的static关键字解析 static关键字是很多朋友在编写代码和阅读代码时碰到的比较难以理解的一个关键字,也是各大公司的面试官喜欢在面试时问到的知识点之一.下面就先讲述一下static关键 ...

  7. 【Java学习笔记之十五】Java中的static关键字解析

    Java中的static关键字解析 static关键字是很多朋友在编写代码和阅读代码时碰到的比较难以理解的一个关键字,也是各大公司的面试官喜欢在面试时问到的知识点之一.下面就先讲述一下static关键 ...

  8. C\C++与Java中的static关键字

    C\C++里面的static: 面向过程的static: 在c和c++面向过程的设计里,在全局变量前加上static关键字则可将该变量定义为一个静态全局变量,比如: static int a; 那么c ...

  9. C++与Java中的static成员总结

    简述 在结构化程序设计中,内存中数据的共享是通过参数, 全局变量实现的; 在面向对象程序设计中函数与数据成员封装在一起, 数据共享通过类内部数据成员之间的相互访问, 外部对象则通过静态成员(即stat ...

  10. java中的static类_再议Java中的static关键字

    再议Java中的static关键字 java中的static关键字在很久之前的一篇博文中已经讲到过了,感兴趣的朋友可以参考:<Java中的static关键字解析>. 今天我们再来谈一谈st ...

最新文章

  1. NEO共识节点推荐搭建步骤
  2. SQL优化常用方法24
  3. PAT甲级1121 Damn Single :[C++题解]哈希表、结构体
  4. 0115互联网新闻 | 王欣发布“马桶MT”;字节跳动发布“多闪”;罗永浩新社交软件“聊天宝”已上架苹果App Store...
  5. 教你一招如何使用几行代码实现zookeeper作为springcloud的服务注册中心
  6. 移动端自动化==什么是Appium
  7. 分区和分片的区别_MySQL分区与分片的差异
  8. [Android5 系列二] 1. 全实例之控件(Widget)
  9. xxx/labelKeypoint/utils/qt.py:81: RuntimeWarning: invalid value encountered in double_scalars
  10. 在线SVG在线编辑器
  11. 服务器声卡硬件安装,win 2008虚拟声卡的配置
  12. 当不知轴承型号时如何寻找轴承故障频率_知课堂 | 快速计算轴承特征频率
  13. 离散LQR与iLQR的推导思路
  14. 字符串数组(String []) 去掉重复值的方法
  15. 为什么“码农”需要自我营销?
  16. wince 之临时宏控制 bib 和 reg
  17. 蓝桥杯单片机第十届省赛题程序实现
  18. 【Logisim】Logisim入门实验
  19. opensips服务器环境搭建
  20. Linux内存管理内存映射以及通过反汇编定位内存错误问题

热门文章

  1. 打包phar文件过大的问题。
  2. 华为配置SSH登陆详细步骤
  3. 64位 windows python3.4及numpy matplot等的安装
  4. 工作中遇到的懒加载问题
  5. (二)Cacti监控
  6. XMPP文件传输协议笔记
  7. AOP动态代理的实现机制
  8. Windows 2003 R2的文件服务器实施
  9. 来51的时间也不短了,开始写blog了。
  10. 利用Trigger完成WPF 的动画-渐显