A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

存放位置:

实例变量随着对象的建立存在于堆内存中,

类变量随着类的加载存在于方法区中

生命周期:

实例变量随着对象消失而消失

类变量随着类消失而消失



使用注意事项:

静态方法只能访问静态成员

静态方法中不可以定义this,super关键字(因为静态有限于对象存在)

主函数是静态的,作为程序入口,可以被jvm调用

利:    对共享数据进行单独空间存储,节省空间.

可以直接被类名调用

弊:    生命周期过长,访问出现局限性(只能访问静态)

public static void main(String[] args)解析:

/*

public:代表这该函数访问权限最大

static:代表主函数随着类的加载就已经存在

void:没有返回值

main:特殊单词,可以被jvm识别

String[] args:参数是一个数组,该数组中的元素是字符串

*/

主函数可以重载,但是jvm只识别main(String[] args);
静态变量:当对象中出现共享数据时

静态函数: 当功能内部没有访问到非静态数据时

若编译时,当前调用的class不存在时,会先去当前目录下找相应的java文件,如果有,则会直接编译,生成class文件



静态代码块:随着类的加载而执行,只执行一次,优先于主函数

用于给类进行初始化

构造代码块会执行多次;

运行顺序:静态代码块,构造代码块,构造函数

class StaticDemo

{

static

{

执行语句

}

void show(){}

}

StaticDemo.show();//加载

StaticDemo s1 = new StaticDemo;//加载

StaticDemo s1 = null;//未加载

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马