logo

Java의 인스턴스 변수

모든 프로그래밍 언어에서 프로그램에는 프로그램 전체에서 사용할 수 있는 다양한 값을 저장하기 위한 식별자가 필요합니다. 이러한 식별자는 변수입니다.

자바의 변수

  • 변수는 시스템 메모리 내부에 저장되는 값에 할당된 이름입니다. 프로그램 실행 중에 값이 업데이트될 수 있습니다.
  • Java 프로그래밍에서는 프로그램에 사용되는 변수를 먼저 선언해야 합니다.
  • 변수는 데이터 유형과 식별자 이름을 사용하여 선언됩니다. 변수는 선언 시 초기화되거나 프로그램 실행 중에 사용자로부터 가져온 값을 할당할 수 있습니다.
  • Java에는 기본적으로 세 가지 유형의 변수가 있습니다.
    1. 자바 지역 변수
    2. 자바 인스턴스 변수
    3. Java 정적 변수 / Java 클래스 변수

자바 인스턴스 변수

  • 클래스 내부에 선언되었지만 메소드 범위 외부에 선언된 변수를 Java에서는 인스턴스 변수라고 합니다.
  • 인스턴스 변수는 클래스 로딩 시 또는 클래스의 객체 생성 시 초기화됩니다.
  • 인스턴스 변수는 default, private, public 및 protected와 같이 Java에서 사용할 수 있는 다양한 액세스 한정자를 사용하여 선언할 수 있습니다.
  • 다양한 유형의 인스턴스 변수에는 다음 지점에서 지정되는 기본값이 있습니다.
Java의 인스턴스 변수

특징

  1. 인스턴스 변수를 사용하려면 클래스의 객체를 만들어야 합니다.
  2. 인스턴스 변수는 연결된 객체가 소멸될 때 소멸됩니다.
  3. 인스턴스 변수는 반드시 초기화할 필요가 없습니다.
  4. 인스턴스 변수는 해당 변수를 선언한 동일한 클래스 내에서 액세스할 수 있습니다.

인스턴스 변수의 한계

  1. 정적, 추상, striftp, 동기화 및 기본으로 선언할 수 없습니다.
  2. 최종적이고 일시적이라고 선언될 수 있습니다.
  3. Java에서 사용할 수 있는 4가지 액세스 한정자(private, public, protected 및 default) 중 하나일 수 있습니다.

Java의 인스턴스 변수 기본값

Java의 인스턴스 변수는 다음과 같이 다양한 데이터 유형을 갖습니다.

자바와 같음
인스턴스 변수 유형 기본값
부울 거짓
바이트 (바이트) 0
짧은 (짧게) 0
정수 0
더블 0.0일
뜨다 0.0
0L
물체 없는
u0000

Java 프로그램에서 인스턴스 변수를 사용해 봅시다.

Java 프로그램에서 인스턴스 변수 사용

다음 Java 프로그램에서는 클래스 학생 기록 선언되고 인스턴스 변수는 다른 액세스 수정자를 사용하여 생성됩니다.

Studentsrecords.java

 public class Studentsrecords { /* declaration of instance variables. */ public String name; //public instance String division; //default instance private int age; //private instance /* Constructor that initialize an instance variable. */ public Studentsrecords(String sname) { name = sname; } /* Method to intialize an instance variable. */ public void setDiv(String sdiv) { division = sdiv; } /* Method to intialize an instance variable. */ public void setAge(int sage) { age = sage; } /* Method to display the values of instance variables. */ public void printstud() { System.out.println('Student Name: ' + name ); System.out.println('Student Division: ' + division); System.out.println('Student Age: ' + age); } /* Driver Code */ public static void main(String args[]) { Studentsrecords s = new Studentsrecords('Monica'); s.setAge(14); s.setDiv('B'); s.printstud(); } } 

산출:

문자열 json객체
 Student Name: Monica Student Division: B Student Age: 14 

위의 Java 프로그램은 클래스의 객체를 선언하여 인스턴스 변수를 초기화합니다. 학생 기록 . 인스턴스 변수의 값 이름, 부서, 그리고 나이 다음을 사용하여 표시됩니다. 인쇄된() 방법.

Java의 로컬, 인스턴스 및 정적 변수의 차이점

Java의 인스턴스 변수
아니요 씨. 지역 변수 인스턴스 변수 정적 변수
1. 메소드 내에서 선언된 변수는 지역 변수입니다. 인스턴스 변수는 클래스 내부에서 선언되지만 메서드나 블록 외부에서는 선언됩니다. 정적 변수는 클래스 내부에서 선언되지만 static 키워드로 시작하는 메서드 외부에서는 선언됩니다.
2. 지역 변수의 범위는 내부에 선언된 메서드로 제한됩니다. 인스턴스 변수는 클래스 전체에서 액세스 가능합니다. 정적 변수는 클래스 전체에서 액세스할 수 있습니다.
삼. 지역 변수는 메서드가 호출될 때 수명이 시작됩니다. 인스턴스 변수와 연관된 객체가 수명을 결정합니다. 정적 변수는 프로그램과 동일한 수명을 갖습니다.
4. 지역 변수는 클래스의 모든 객체에 접근 가능합니다. 인스턴스 변수에는 객체마다 다른 복사본이 있습니다. 정적 변수에는 전체 클래스의 단일 복사본만 있습니다.
5. 특정 메소드에 필요한 값을 저장하는 데 사용됩니다. 클래스의 다양한 메서드에서 액세스하는 데 필요한 값을 저장하는 데 사용됩니다. 상수를 저장하는 데 사용됩니다.