static关键字

static中文意思:静态的

static是和对象无关的。

1.Java中的静态

修饰成员变量    静态属性

修饰成员方法   静态方法

修饰代码块   静态代码块

案例1

class Man {
	static String name;//静态的属性  和对象无关的
	//静态方法
	public static void eat () {
		System.out.println("吃饭喝酒");
	}
	//静态代码块
	static {
		System.out.println("嘻嘻");
	}
}
public class Demo1 {
	public static void main(String[] args) {
		//咋使用 类.静态的属性
		Man.name = "狗蛋";
		System.out.println(Man.name);
		//使用  类.静态方法名字()
		Man.eat();
		
	}

}

static修饰成员变量

语法格式:static 数据类型  变量名;   例如:static  string name;

注意事项:

使用static修饰的变量叫静态变量

代码中对象还没有创建的时候,如果加载了类,static修饰的属性已经存在了,和对象没有关系

案例2

class Person {
	String name;
	int age;
	static String country;
}
public class Demo2 {
	public static void main(String[] args) {
		Person s = new Person
        //用s方法调属性并给赋值
		s.name = "张三";
		s.age = 23;
		Person.country = "中国";
		//The static field Person.country 
		//should be accessed in a static way
		System.out.println(s.country);//中国
		System.out.println(Person.country);//in a static way
		s.country = "PRC";
		System.out.println(Person.country);//PRC
	}
}

总结

类.静态属性

static修饰成员方法

静态方法语法格式

public  static 返回值  方法名字(参数){}

调用静态方法:

类.方法名字();

案例3

class Dog {
	public void eat () {
		System.out.println("普通的成员方法");
	}
	public static void sleep () {
		System.out.println("静态方法");
	}
}
public class Demo3 {
	public static void main(String[] args) {
		Dog.sleep();
		//Dog.eat();只能拿对象来调用这个方法eat
		Demo3.test();
	}
	public static void test () {
		System.out.println("嘻嘻");
	}

}

static 修饰代码块

静态代码块的语法格式:

static{语句体}

只要类加载,静态代码块就会执行而且是优先执行

执行顺序: 静态代码块-》构造代码块-》构造方法

class Cat {
	public Cat () {
		System.out.println("无参构造方法");
	}
	{
		System.out.println("构造代码块");
	}
	static {
		System.out.println("静态的代码块");
	}
}
public class Demo4 {
	public static void main(String[] args) {
		Cat cat = new Cat();
	}

}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值