首页 > 其他 > 详细

关于static关键字

时间:2014-02-28 15:26:11      阅读:456      评论:0      收藏:0      [点我收藏+]

static用于修饰成员(成员变量,成员函数),不能修饰局部变量
被修饰的变量和函数是静态的,可被多个对象共享,节省内存
可以直接被类名调用
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
特点:
   生命周期和所属类相同
   优先于对象存在
   为所有对象共享
   直接被类名调用
注意:
   静态方法不能访问非静态变量和方法!
   静态方法中不能有this,super关键字,应静态方法先于对象存在
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
什么时候使用静态
   当对象中有共享数据时,即相同的东西,用静态来定义。
   非静态数据存在于堆内存中。
   当函数内部没有访问到非静态数据时,该函数可以定义为静态的。
例如:创建一个工具类,工具里的方法都定义为静态,而调用此类并不用
      创建对象,可以把构造方法私有化来避免创建对象。
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

静态代码块
格式:

  

static
{
    语句;
}

功能:在类加载的时候运行,只运行一次,对类进行初始化
注意:静态代码块,还是不能引用非静态成员

代码举例:

    

bubuko.com,布布扣
 1 class Test
 2 {
 3     static
 4     {
 5         System.out.println("类已加载");
 6     }
 7     public static void show()
 8     {
 9         System.out.println("aa");    
10     }
11 }
12 class TestEntr
13 {
14     public static void main(String[] args)
15     {
16         new Test();    //运行  此处生成对象用到类中的构造方法,
17         Test.show();   //运行  用到类中的show()
18         Test t = null; //不运行,所谓类加载是指用到类中的内容
19                 //而此处只是生成一个类的引用而未用到类中的内容
20     }
21 }
bubuko.com,布布扣

关于static关键字,布布扣,bubuko.com

关于static关键字

原文:http://www.cnblogs.com/fantasy01/p/3572446.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!