加载中…
个人资料
谢先斌
谢先斌
  • 博客等级:
  • 博客积分:0
  • 博客访问:392,558
  • 关注人气:201
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

Java的static

(2013-09-23 19:30:05)
标签:

java

static

游离块

static方法

static变量

教育

分类: Java

   Java中引入static,在编译时将变量存储在程序的静态存储区而非堆栈空间,并且静态数据成员按定义出现的先后顺序依次初始化。

    使用static关键字的优势:1、节省内存空间。static变量对所有的对象是共有的,并且仅存储在一处。2static变量可以更新。当对static变量进行更新时,所有对象在读取该变量时均为更新后的值。

     static常用与修饰变量和方法。

1. static修饰的变量称为类变量,也称为静态变量;非static修饰的变量称为实例变量。他们的区别是:类变量属于类,通过 类名.属性名 使用;实例变量属于该类的一个对象,常通过 对象名.变量名调用。

2. static修饰的方法称为类方法,也称为静态方法;非static修饰的方法常称为实例方法。他们的区别是:类方法属于整个类,常通过 类名.方法名 调用;实例方法属于该类的一个对象,常通过 对象名.方法名 调用。

    以上结论的前提是在访问控制权限允许的情况下。当然,对于静态变量和方法,也可以通过该类的对象名.变量名或方法名调用。

 

注意:1. static{}方法称为静态游离块。静态游离块总是在程序的首次执行时被调用且仅执行一次,常用于初始化程序中的数据(参数,类,文件等)。静态游离块于所在的位置无关,但不能位于方法和构造器中。

2.static修饰的静态方法中不能使用this关键字,因为静态方法不属于任何一个实例。

3.静态方法不能被子类的静态方法覆盖。

4.对该类的多个对象来说,静态变量仅分配一次内存,供所有对象共用。类对象类变量在每次被实例化时对象时均会进行一个自身的拷贝,即分配新的内存空间。

0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有