java之静态属性方法

时间:2025-02-24 12:11:47

在java中有一个static的关键字,它用来修饰类的成员。如果用static修饰属性,该属性被称为静态属性

静态属性的访问格式如下

类名.属性名

如果没有修饰静态属性示例代码如下

class Xuesheng1{
	String name;
	int age;
	String school="A大学";
	public Xuesheng1(String name,int age) {
		=name;
		=age;
	}
	public void info() {
		("姓名:"++",年龄:"++",学校:"+school);
	}
}

public class Jingtaishuxing {

	public static void main(String[] args) {
		Xuesheng1 stu1=new Xuesheng1("张三",18);
		Xuesheng1 stu2=new Xuesheng1("李四",19);
		Xuesheng1 stu3=new Xuesheng1("王五",20);
		();
		();
		();
		="B大学";
		("修改stu1学校对象的学校信息为B大学后");
		();
		();
		();

	}

}

运行结果是

姓名:张三,年龄:18,学校:A大学
姓名:李四,年龄:19,学校:A大学
姓名:王五,年龄:20,学校:A大学
修改stu1学校对象的学校信息为B大学后
姓名:张三,年龄:18,学校:B大学
姓名:李四,年龄:19,学校:A大学
姓名:王五,年龄:20,学校:A大学
可以看出,张三的学校由A大学变为B大学,其他人没有变。如果不用static,对象数量少还好说,数量多了,就非常麻烦,现实中一个学校不可能就三个学生。

可以用static用来修饰school属性

示例代码如下

class Xuesheng1{
	String name;
	int age;
	static String school="A大学";
	public Xuesheng1(String name,int age) {
		=name;
		=age;
	}
	public void info() {
		("姓名:"++",年龄:"++",学校:"+school);
	}
}

public class Jingtaishuxing {

	public static void main(String[] args) {
		Xuesheng1 stu1=new Xuesheng1("张三",18);
		Xuesheng1 stu2=new Xuesheng1("李四",19);
		Xuesheng1 stu3=new Xuesheng1("王五",20);
		();
		();
		();
		="B大学";
		("修改stu1学校对象的学校信息为B大学后");
		();
		();
		();

	}

}

修改后的代码变化不大,唯一变化是school由static修饰

static String school="A大学";

之前的代码没有用static修饰

 String school="A大学";

修改后的运行结果如下

姓名:张三,年龄:18,学校:A大学
姓名:李四,年龄:19,学校:A大学
姓名:王五,年龄:20,学校:A大学
修改stu1学校对象的学校信息为B大学后
姓名:张三,年龄:18,学校:B大学
姓名:李四,年龄:19,学校:B大学
姓名:王五,年龄:20,学校:B大学
和第一程序运行结果对比,可以发现三个学生的学校都变了。

经过static修饰过的属性就是静态属性,可以影响全域。