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修饰的区别

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


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM