在Java使用静态变量
这里我们将讨论Java的静态变量。 Java实际上没有全局变量的概念。要在Java定义全局变量,使用关键字 static 。下面讨论静态变量的优点。现在极客们一定想知道静态变量有什么优点,为什么要合并到我们的程序中。现在我们在这里以一个实时示例为例,以了解我们为什么要使用它。
插图:员工目录
假设 NIT Agartala 的生产工程系有 25 名学生。所有学生都有其唯一的注册号、注册号和姓名。所以在这种情况下实例数据成员是好的。现在,每次创建对象时,所有实例数据成员都会获得内存。这里的“部门”是指所有对象的共同属性。如果我们把它设为静态,这个字段只会获得一次内存。
因此静态变量可以用来引用所有对象的公共属性(不是每个对象唯一的),例如学生的大学名称、员工的公司名称、公司的 CEO 等。它使程序内存高效(即,它节省内存)。
例子
Java
// Java Program to show the Advantages of Static Variable
// Class 1
class emp {
// Attributes of employees
int id;
String name;
int salary;
// Here we are declaring CEO as a static variable
static String ceo;
// Constructors of this class
emp(int id, String name, int salary, String ceo)
{
// This keyword refers to current instance itself
this.id = id;
this.name = name;
this.salary = salary;
this.ceo = ceo;
}
// Method of this class
void display()
{
// Print all associated attributes
System.out.println("ID: " + id + ", "
+ "Name:: " + name + ", "
+ "Salary: $" + salary + " & "
+ "CEO:: " + ceo);
}
}
// Class 2
// Main class
class GFG {
// Main driver method
public static void main(String[] args)
{
// Creating object of class 1
// Object 1
emp Monodwip
= new emp(1, "Monodwip", 30000, "Rinkel");
// Object 2
emp Mukta = new emp(2, "Mukta", 50000, "Rinkel");
// We have changed the CEO for Subham, As CEO is
// declared static, sowill change for all the
// objects
// Object 3
emp Subham = new emp(3, "Subham", 40000, "Arnab");
// Calling display() method over all objects
Monodwip.display();
Mukta.display();
Subham.display();
}
}
输出
ID: 1, Name:: Monodwip, Salary: $30000 & CEO:: Arnab
ID: 2, Name:: Mukta, Salary: $50000 & CEO:: Arnab
ID: 3, Name:: Subham, Salary: $40000 & CEO:: Arnab
输出说明:
从上面的输出中,我们可以看出所有对象的 Rinkel 都被 Arnab 替换了,因此证明了静态变量的使用是合理的。