static关键字

static关键字:

    static在Java中可以修饰属性、方法、代码块。

    1、static修饰属性

      (1)在程序中使用static声明属性,此属性成为全局属性(也称为静态属性)。声明有全局属性的类产生的所有对象公用此静态属性。类的公共属性最好由类进行修改。有时可以把使用static声明的属性称为类属性。

     类属性调用: 类名称.static属性


     (2)在Java程序中有一种特殊的属性,就是常量,用static修饰的常量称为静态常量,同时也是全类公有。

     class Math{

            . . . . . . 

            public static final double PI = 3.14;

            . . . . . . 

     }

     在程序中可以直接使用Math.PI获取这个常量。

     注意:静态变量和非静态变量的区别是:静态变量被所有的对象所共享,在内存中只有一个副本,它当且仅当在类初次加载时会被初始化。而非静态变量是对象所拥有的,在创建对象的时候被初始化,存在多个副本,各个对象拥有的副本互不影响。

    2、static修饰方法

     用static声明的方法有时被称为类方法,可以直接由类名直接调用。

    注意:(1) 非static声明的方法可以去调用static声明的方法或属性。但是static声明的方法不能调用非static声明的属性和方法。

                (2) 在static方法里不能出现this或者super等关键字。

                (3) 父子类中,静态方法只能被静态方法覆盖,父子类中,非静态方法只能被非静态方法覆盖

    3、static修饰java代码块

     static的另一个作用是用来修饰类里一个独立的代码块,static代码块可以放置在类中的任何位置,类中也可以有过个static代码块。在类被初次加载的时候,会按照static块的顺序执行static块,并且只会执行一次。



类的加载:JVM在第一次使用一个类时,会到classpath所指的路径里去找这个类所对应的字节码文件,并读进JVM保存起来,这个过程称之为类加载






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值