static关键字特点

深入理解Java static关键字
本文详细解析了Java中static关键字的特点,包括静态代码块的作用、static修饰与非static修饰的区别,以及如何通过类名调用静态变量和方法。同时,介绍了静态代码块用于初始化类的静态成员变量的方法。

static关键字特点

  • 随着类的加载而加载
    • static修饰的变量和方法都会放在方法区中静态区,是属于类的。
  • 静态变量属于类不属于对象
    • 对象也可以使用静态变量
    • 当没有对象时可以直接用类来调用静态变量
  • 被类的所有对象共享
  • 静态的内容存在于方法区的静态区

    static的使用

  • 可以通过类名调用
  • 类名.静态变量
  • 类名.静态方法
public class TestStatic {
    public static void main(String[] args) {
        // 类名.静态变量
        System.out.println(Dog.species);
        //类名.静态方法
        Dog.bark();
    }
}
class Dog{
    static String species = "animal";
    String color;
    static public void bark(){
        System.out.println("wangwangwang...");
    }
}

静态代码块

  • 不包含在任何方法中的静态代码块(static block)。
  • 作用:用来初始化类的静态成员变量。
public class TestStatic {
    public static void main(String[] args) {
        System.out.println(Dog.color);
    }
}
class Dog{
    //静态变量
    static String color;
    //静态代码块(只能初始化静态变量,不能初始非静态变量!)
    static{
        color = "棕色";
    }
}
  • 特点:
    1. 在类中方法外出现,并加上static修饰。
    2. 在加载的时候就执行,并且值执行一次

static修饰与非static修饰的区别

总结:
在这里插入图片描述
以上

转载于:https://www.cnblogs.com/fzxey/p/10739400.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值