欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

声明static关键字作用

程序员文章站 2022-03-31 08:20:35
static关键字,主要可以用来定义属性与方法。static定义属性:在一个类之中,所有的属性一旦定义了实际上都由各自的堆内存所保存//定义一个程序类class Person{//创建所有同一个国家的类private String name;private int age;String country = "中华民国";public Person(String name,int age){//把值传递给私有变量this.name = name;this.age=ag...

static关键字,主要可以用来定义属性与方法。
static定义属性:
在一个类之中,所有的属性一旦定义了实际上都由各自的堆内存所保存

//定义一个程序类
class Person{	//创建所有同一个国家的类
	private String name;
	private int age;
	String country = "中华民国";
	
	public Person(String name,int age){//把值传递给私有变量
		this.name = name;
		this.age=age;
	}
	
	public String getInfo(){//返回信息方法
		return "姓名"+this.name
				+"、年龄"+this.age
				+"、国家"+this.country;
	}
}

public class javaDemo{
	public static void main(String[] args){//实例化对象并输出
		Person PerA = new Person("张三",10);
		Person PerB = new Person("李四",20);
		Person PerC = new Person("王五",30);
		System.out.println(PerA.getInfo());
		System.out.println(PerB.getInfo());
		System.out.println(PerC.getInfo());
	}
}

声明static关键字作用
声明static关键字作用
在正常开发过程中每一个对象要保存有各自的属性,所以此时的程序并没有问题。
如果有一天国家改名为:“*”,操作起来会非常繁琐。

  • 重复保存
  • 修改不便

解决方案,将country修改为公共属性,使用static。

class Person{	//创建所有同一个国家的类
	private String name;
	private int age;
	static String country = "中华民国";//已修改
	
	public Person(String name,int age){//把值传递给私有变量
		this.name = name;
		this.age=age;
	}
	
	public String getInfo(){//返回信息方法
		return "姓名"+this.name
				+"、年龄"+this.age
				+"、国家"+this.country;
	}
}

public class javaDemo{
	public static void main(String[] args){//实例化对象并输出
		Person PerA = new Person("张三",10);
		Person PerB = new Person("李四",20);
		Person PerC = new Person("王五",30);
		Person.country = "*";
		System.out.println(PerA.getInfo());
		System.out.println(PerB.getInfo());
		System.out.println(PerC.getInfo());
	}
}

声明static关键字作用
对于static属性的访问需要注意:由于其本身是一个公共的属性,虽然可以通过对象进行访问, 但是最好是通过所有对象最高代表来访问(类)。所有static属性可以有类名称直接调用。
声明static关键字作用
static可以在没有实例化对象的时候使用。
例:

class Person{	//创建所有同一个国家的类
	private String name;
	private int age;
	static String country = "中华民国";//已修改
	
	public Person(String name,int age){//把值传递给私有变量
		this.name = name;
		this.age=age;
	}
	
	public String getInfo(){//返回信息方法
		return "姓名"+this.name
				+"、年龄"+this.age
				+"、国家"+this.country;
	}
}

public class javaDemo{
	public static void main(String[] args){//实例化对象并输出
		//不实例化对象直接调用
		System.out.print(Person.country);
		Person.country = "中国";
		Person PerA= new Person("张三",21);
		System.out.print(PerA.getInfo());
	}
}

声明static关键字作用
总结:

1. 在以后进行类设计的时候首选的一定是非static属性,公共信息存储才会使用到static.
2. 非static属性需要在对象产生后才可以使用,而static不需要。

本文地址:https://blog.csdn.net/weixin_46245201/article/details/109588496

相关标签: 基础 java