黑马程序员技术交流社区

标题: 总结一下static关键字 心血总结! [打印本页]

作者: Aaron_wang    时间: 2015-11-20 00:00
标题: 总结一下static关键字 心血总结!
static 关键字:
是一个修饰符,用于修饰成员(成员变量和成员方法),注意不能修饰局部变量。被修饰的成员变量称为类变量,之所以叫类变量是跟它所作用的生命周期是有关的。而没被static修饰的成员变量又称为实例变量,即其生命周期和实例(对象)相关联。

特点:
1.被static修饰的成员在方法区/共享区,不在堆内存了。
2.静态成员随着类的加载而加载,随着类的消亡而消亡。即最先加载,最后消亡,生命周期和类一样,最长。
3.基于第二个特点可知,优先于对象存在。因为类一加载,静态成员就进方法区了,之后对象开辟空间。
4.可以被所有对象共享(使用或改变)。
5.多了一种调用方式:类名.静态成员。
6.被修饰的变量是全局的。

静态的使用注意事项:
1.静态方法只能访问静态成员(变量和方法)。
                  非静态方法既可以访问静态又可以访问非静态。
2.静态方法里不可以使用this、super关键字。
                   还是那句话,静态成员先加载,对象是后加载的。
3.主函数是静态的。

静态的利弊:
利:对多个对象共享的数据进行单独的存储,节省空间,没必要每个对象都存一份。
弊:生命周期过长,占内存。
       访问出现局限性,只能调用静态成员。
作者: T-l-H、小生    时间: 2015-11-20 00:52
去公司面试的时候,就被问了这个。醉了。。。
作者: Aaron_wang    时间: 2015-11-20 17:00
T-l-H、小生 发表于 2015-11-20 00:52
去公司面试的时候,就被问了这个。醉了。。。

太基础了?
作者: zqiang    时间: 2015-11-20 21:55
再来复习一遍
作者: 一江夜雨    时间: 2015-11-20 22:41
过来学习一下  王老师
作者: Aaron_wang    时间: 2015-11-20 22:50
一江夜雨 发表于 2015-11-20 22:41
过来学习一下  王老师

我擦,是你!哪来的技术币?
作者: 袁有福123    时间: 2015-11-20 22:56
总结写的不错  学习到了!给力!
作者: 13542010298    时间: 2015-11-20 23:05
复习一遍 ,谢谢
作者: oup    时间: 2015-11-20 23:07
总结得好!!!
作者: T-l-H、小生    时间: 2015-11-20 23:16
Aaron_wang 发表于 2015-11-20 17:00
太基础了?

肯定基础啊。不过我们从黑马毕业出去简历基本都是写一两年的工作经验,反正我去公司面试的时候,就被问了这个
作者: 切比雪夫    时间: 2015-11-22 22:06
谢谢分享!!
作者: sshh11    时间: 2015-11-22 23:29
太好了 很全面
作者: hrfhwy    时间: 2015-11-23 20:11
又复习了一遍




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2