C和Java中static修饰符的作用

来源:互联网 发布:linux 发送icmp请求包 编辑:程序博客网 时间:2024/04/26 13:52

C中的static

C语言中的static作用有两个:其一,增加局部变量的生命周期,将其升级为全局变量;其二,声明变量或常量不可被其他文件直接引用,必须通过头文件包含的方式。
-----------------------------------------------------------------------------

Java中的static

静态域

static修饰对象域时,我们称其为静态域。对于静态域而言,static起到了资源共享的作用。当我们在构造对象时,没有用static修饰的域,对于每一个对象都拥有自己的相应的那个域;而用static修饰的域,则意味着所有的对象共享这一个域,对任意一个对象的这个静态域进行修改都会使所有的对象的这个域发生改变,所以实现了一种类似于全局变量的作用。
-----------------------------------------------------------------------------

静态常量

静态常量即在原有的final常量基础上再加上static,其本身还是起到一种共享的作用。比如我们可以用static和final定义PI=3.14……这样的一个经常用的具有固定值的常量,这样在用到PI的时候不用每次在临时创建一个double类型的常量,而直接调用这个值就可以了。这个用法还可以减少JVM的内存回收压力。
-----------------------------------------------------------------------------

静态方法

静态方法表现为其调用不需要依赖对象的绑定,可以直接由类名引导方法的执行,比如System.out.println(),调用的就是System类中的out.println() 方法,而这个方法显然没有依赖于任何对象而执行。

0 0