정적 변수:'정적' 키워드를 사용하여 선언되며 클래스 변수라고도 합니다. 생성자 내에서 또는 클래스 함수 외부에서 정의됩니다. 변수가 정적이면 생성되는 개체의 수에 관계없이 클래스의 모든 개체 간에 공유됩니다.
변수와 함께 사용될 때 '정적' 키워드가 작동하는 방식 시연 -
예시
public class Demo{ String name; static String designation; public void display_data(){ System.out.println("The name is: " + name); System.out.println("The designation of this team members is : " + designation); } public static void main(String s[]){ Demo.designation = "Intern"; Demo my_obj = new Demo(); my_obj.name = "Joe"; Demo my_obj_2 = new Demo(); my_obj_2.name = "Joanna"; my_obj.display_data(); my_obj_2.display_data(); my_obj.designation = "Senior dev"; System.out.println("\nAfter the changes, the data is :\n"); my_obj.display_data(); my_obj_2.display_data(); } }
출력
The name is: Joe The designation of this team members is : Intern The name is: Joanna The designation of this team members is : Intern After the changes, the data is : The name is: Joe The designation of this team members is : Senior dev The name is: Joanna The designation of this team members is : Senior dev
Demo라는 클래스에는 변수와 클래스 변수를 표시하는 데 사용되는 'display_data'라는 함수가 포함되어 있습니다. 메인 함수에서 클래스의 인스턴스가 생성되고 객체 변수에 이름과 명칭이 할당됩니다. 표시되고 다른 개체가 생성되고 동일한 작업이 수행됩니다. 데이터가 콘솔에 표시됩니다. 변경 사항이 여기에 반영됩니다.
정적 최종 공백 변수 − 'static' 키워드와 함께 빈 최종 변수의 정의와 동일합니다. 즉, 정적 코드 블록 내에서만 초기화될 수 있음을 의미합니다.
빈 최종 변수 − 이름에서 알 수 있듯이 할당된 값이 없는 최종 변수를 빈 최종 변수라고 합니다. 생성자 내에서만 초기화할 수 있으며 빈 최종 변수를 시작하지 못하면 컴파일 오류가 발생합니다.
빈 최종 변수가 작동 중입니다. -
예시
public class Demo{ private static final int val_1; private final int val_2; static{ val_1 = 1; } Demo(int val_3){ val_2 = val_3; } public static void main(String s[]){ Demo obj_1 = new Demo(95); Demo obj_2 = new Demo(99); System.out.println("The value of first variable is : "); System.out.println(Demo.val_1); System.out.println("The value of first variable accessed using the object : "); System.out.println(obj_1.val_2); } }
출력
The value of first variable is : 1 The value of first variable accessed using the object : 95
Demo라는 클래스에는 변수와 한 값을 다른 클래스 변수에 할당하는 데 사용되는 'Demo'라는 생성자가 포함되어 있습니다. 메인 함수에서 클래스의 두 인스턴스가 생성되고 해당 값이 콘솔에 표시됩니다.