static是静态的意思。
一.我们常见的static修饰为
我们首先了解static的作用是什么?
一旦—个方法使用static进行修饰,那么这种 静态方法,不需要创建对象,调用格式应该为:
类名称.静态方法名
1.定义静态的成员变量,直接在数据类型前面
加上static
2.定义静态的成员方法,直接在返回值类型的
前面加上static
3.使用静态的成员变量,应该:
类名称.静态成员变量
4.使用静态的成员方法,应该:
类名称.静态成员方法
注意事项:
静态的方法,不能直接使用非静态。
原因:内存当中先有的静态内容,后有的非静态内容。先人不知道后人,但是后人知道先人。
二.代码演示看看有无static的区别
首先用static构建一个方法
没有报红很显然可以用
类名称.静态成员方法
正常调用
然后把里面的static删掉
很明显出现错误了
三、static修饰符具有如下特性:
1.被static修饰的属性(成员变量)称为静态变量,也叫做类变量;
2.被static修饰的常量称为静态常量;
3.被static修饰的方法称为静态方法,也叫做类方法;
4.被static修饰的代码块叫做静态代码块;
5.被static修饰符的内部类,叫做静态内部类。
其中,静态变量、静态方法、静态常量统称为类的静态成员,归整个类所有,不属于某个单一的对象。
也就是说,静态成员不属于某个对象单独拥有,而是被类的所有实例对象共享
所以,静态成员不需要通过对象来进行访问,而是直接通过类来访问。
只要这个类被加载,Java虚拟机就可以根据类名找到它们
Java虚拟机(JVM)
以下是JVM的内存对象存在形式:
用cat方法创建一个“对象”,用
类名称.静态成员变量
的方法从“栈”中找出cat里面name的位置并赋值为“小白”,可以把这个理解为一个渠道方便用于搜索(道路),整体是一颗巨大的树,从主体分支成许多小树枝。