关键字:static

static主要有两种作用:
1、位某特定的数据类型或对象分配单一的存储空间,而与创建对象的个数无关。
2、将某个方法或属性与类而不是对象关联在一起。

static主要有4种使用情况:
1、static成员变量(叫做静态变量)
所有此类的对象都可以使用静态变量,静态变量在类加载的使用就被加载了。
注意:在Java中,不能再方法体中定义static变量。
因为在方法体中的变量叫局部变量,在JVM中“局部变量”保存在栈中,而静态变量保存在方法区中。

2、static成员方法
static方法是类的方法。
static方法中只能访问静态成员变量和静态成员方法,因为当static方法被调用时,非静态成员方法和变量可能还没被加载。
static成员方法中不能用this和super,因为this和super不一定被创建了。

3、static代码块

public class Test{
 private static int a;
 static{
  Test.a=1;
  Sysout.out.printLn(a);
  System.out.printLn("staic block is called");  
  }
  public static vodi main(Stringp[ ]args){
  }
}

输出
4
static block id called

4、static内部类
只有内部类才能被定义为staic。
可以不一览与外部类实例对象而被实例化,静态内部类只能访问外部类中的静态成员金额静态方法。

package innerClass;   
public class OutClass1 {   
    public int oid;   
    public String oname;   
    public static class InnerStaticClass1{   
        public int iid;   
        public String iname;   
    }   
}  
package innerClass;   
import innerClass.OutClass1.InnerStaticClass1;   
public class Test1 {   
    public static void main(String[] args) {   
        OutClass1 oc=new OutClass1();   
        InnerStaticClass1 ic=new InnerStaticClass1();   //不依赖与外部类的实例 
    }   
}  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值