static关键字

1,静态变量

例1:

静态变量是属于类的,和对象没有关系。不管哪个对象操作静态变量,类中的静态变量都会改变,而其他类在调用该变量时都相应改变了。

非静态变量是属于某个对象的,一个对象赋值后,另一个对象调用不会相应改变。

public class StaticDemo {
    int commonint = 0;
	static int staticint = 0;
	
    public static void main(String[] args) {
		StaticDemo sd1=new StaticDemo();
		StaticDemo sd2=new StaticDemo();
     //为普通变量赋值
		System.out.println("sd1被赋值前,sd1的普通变量值为:"+sd1.commonint);
		System.out.println("sd1被赋值前,sd2的普通变量值为:"+sd2.commonint);
		System.out.println("为普通变量sd1赋值为666");
		sd1.commonint=666;
		System.out.println("sd1被赋值后,sd1的普通变量值为:"+sd1.commonint);
		System.out.println("sd1被赋值后,sd2的普通变量值为:"+sd2.commonint);
		System.out.println("\r\n");
    //为静态变量赋值
		System.out.println("sd1被赋值前,sd1的静态变量值为:"+sd1.staticint);
		System.out.println("sd1被赋值前,sd2的静态变量值为:"+sd2.staticint);
		System.out.println("为静态变量sd1赋值为666");
		sd1.staticint=666;
		System.out.println("sd1被赋值后,sd1的静态变量值为:"+sd1.staticint);
		System.out.println("sd1被赋值后,sd2的静态变量值为:"+sd2.staticint);
	}}

输出结果为:

sd1被赋值前,sd1的普通变量值为:0
sd1被赋值前,sd2的普通变量值为:0
为普通变量sd1赋值为666
sd1被赋值后,sd1的普通变量值为:666
sd1被赋值后,sd2的普通变量值为:0


sd1被赋值前,sd1的静态变量值为:0
sd1被赋值前,sd2的静态变量值为:0
为静态变量sd1赋值为666
sd1被赋值后,sd1的静态变量值为:666
sd1被赋值后,sd2的静态变量值为:666

例2:

public class Student {
	int id;// 学号
	static int num = 0;

	public Student(int id) {
		this.id = id;
		num++;
	}

	public static void main(String[] args) {
		Student s1 = new Student(1);//调用一次有参构造方法,num加1
		Student s2 = new Student(2);//调用一次有参构造方法,num加1
		Student s3 = new Student(3);//调用一次有参构造方法,num加1
		System.out.println("s1的学号:" + s1.id);
		System.out.println("s2的学号:" + s2.id);
		System.out.println("s3的学号:" + s3.id);
		System.out.println("学生的个数为" + Student.num);//num是静态变量,属于类,故使用Student.num。
	}
}

输出结果为:

s1的学号:1
s2的学号:2
s3的学号:3
学生的个数为3

2,静态方法

用static 修饰的方法称为静态方法
静态方法属于类,访问静态方法是通过(类名,方法名)

3,静态常量

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值