static

 

在类中,类的方法也可以分为实例方法和类方法。方法类型前面不加关键字static关键字修饰的是实例方法,加static关键字修饰的是类方法(静态方法)。

如:Class A {

Int a;

Float max(float x,float y) {

…//实例方法

}

Static float jerry(){

…//类方法

}}

类中实例方法和类方法的区别:

1) 类方法因为是在创建对象之前就已经生效了,这时候实例变量还没有被分配内存空间,只有类变量被分配了内存空间,所以类方法只能调用被分配内存空间的变量即类变量;

2) 实例方法是在创建对象之后才开始生效的,这是无论是类变量还是实例变量都已经被分配了内存空间,所以实例方法生效后可以调用类变量和实例变量.

3)实例方法只能被对象调用,实例方法可以操纵实例变量和类变量。

4)类方法只能操纵类变量,即使没有创建任何对象,该种类型的方法也可用类名调用,因为它是属于类的。

一句话:类方法和实例方法就是在其占用的空间时间的长短,类方法长,实例短。Static函数在内存中只有一份,实例方法在每一个被调用中维持一份复制品。

Static全局变量与普通全局变量的区别是:  static全局变量只初始化一次,防止在其他文件单元中被引用。比如,一个工程中有多个源文件,而其中一个源文件中定义了一个static的全局变量,那么它只在该源文件中有效,在该工程中的其它源文件中调用它就是无效的,它的作用域只在被定义的源文件中才有效。

Static局部变量和普通局部变量的区别是:static局部变量只被初始化一次,下一次依据上一次结果值。如:void lia(){  static int i=0;   i=i+1;}  如果该函数被调用了三次,那么主函数输出显示i=3;如果没有static修饰i,lia()被调用三次后,i的值一样是1.

  1. 程序代码:

图片

      2. 

图片 

 

参考文献:

凯丽8568http://blog.163.com/qiaojingxuan@126/blog/static/99912032009112241017127/

Java程序设计,张跃平,P66.

Handbook For C/C++ Software Engineering Interview.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值