博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java static作用
阅读量:5278 次
发布时间:2019-06-14

本文共 789 字,大约阅读时间需要 2 分钟。

在java中,static可以修饰成员变量、成员方法、代码块、内部类。

  1. static修饰成员变量,可以达到全局变量的效果(Java没有全局变量的概念),当一个类定义了static变量,其实就是申请一个内存地址,所有该类的对象共享这个静态成员变量。       

静态变量引用方式:类名.静态变量,对象名.静态变量。

这里区分下:静态变量和实例变量。静态变量:用static修饰,属于类,只要类被加载就会被分配内存空间;实例变量:没有static修饰,只有对象被创建了,才会分配内存空间,每一个对象的实例变量互不相关,引用方式:只能对象.实例变量。

2.static修饰成员方法,static修饰的方法是类的方法,不需要创建对象就可以调用,而非静态方法,只有对象呗创建了,才可以调用方法。

静态方法不能使用this,super关键字,不能调用非static的成员变量,非static的成员方法,只能访问static修饰的成员变量,成员方法。因为没有static修饰的成员变量,成员方法,这个类的对象还没被创建,即使创建了也无法确定是哪个对象的。

3.static修饰代码块,会在类被加载的时候执行且仅会被执行一次,一般用来初始化静态变量和调用静态方法

4.static修饰内部类,这样可以不依赖与外部类实例对象而被实例化,而通常的内部类需要外部类实例化后才能实例化。静态内部类不能与外部类有相同的类名,不能访问外部类的成员变量,只能访问外部类的static成员变量和static方法。

Java初始化,加载顺序:父类静态成员变量,父类静态代码块,子类静态成员变量,子类静态代码块,父类非静态成员变量,父类非静态代码块,父类构造函数,子类非静态成员变量,子类非静态代码块,子类构造函数

转载于:https://www.cnblogs.com/zengxiaoyi36/p/9259586.html

你可能感兴趣的文章
Java面向对象抽象类案例分析
查看>>
100.Same Tree
查看>>
JAVA 根据经纬度算出附近的正方形的四个角的经纬度
查看>>
Linux系统配置matlab2009b
查看>>
ZH奶酪:基于ionic.io平台的ionic消息推送功能实现
查看>>
对SPI、IIC、IIS、UART、CAN、SDIO、GPIO的解释
查看>>
Thymeleaf模板格式化LocalDatetime时间格式
查看>>
庖丁解“学生信息管理系统”
查看>>
Pyltp使用
查看>>
Java8函数之旅 (七) - 函数式备忘录模式优化递归
查看>>
移植LWIP(ENC28J60)
查看>>
无标题
查看>>
vue+element下拉框样式的点击按钮
查看>>
Vue+element 解决浏览器自动填充记住的账号密码问题
查看>>
c++中减字符0的作用(转)
查看>>
今日嗅评:百度金融挖了一线实操的干将,这比高薪聘请大行长实在多了
查看>>
Linux 基本收集
查看>>
JS框架设计读书笔记之-选择器引擎02
查看>>
html5——web字体
查看>>
锋利的jQuery-7--query ui效果库--拖动排序插件sortable
查看>>