JAVA

[JAVA] static 변수, static 메서드

준몽쓰 2025. 3. 1. 22:51

■ static 변수

- 객체 생성 없이 사용할 수 있는 필드와 메소드를 생성하고자 할 때 

- 공용 데이터에 해당하거나 인스턴스 필드를 포함하지 않는 메소드를 선언하고자 할 때

- "클래스이름.필드"로 사용할 수 있다.

Data3.java
DataCountMain3

1) 인스턴스 변수

 - static이 붙지 않은 멤버 변수 ex) name

 - static이 붙지 않은 멤버 변수는 인스턴스를 생성해야 사용할 수 있음.

 - 인스턴스를 만들 때마다 새로 만들어야 함

 

2) 클래스 변수 (정적 변수)

 - static이 붙은 멤버 변수 ex) count

 - static이 붙은 멤버 변수는 클래스에서 바로 접근해 사용 가능하고 클래스 자체에 소속 되어있음

 

■ static 메서드

1) 클래스 메서드 (정적 메서드)

 - static이 붙은 메서드

 - 인스턴스 생성 없이 클래스에 있는 메서드를 바로 호출

 - static 변수와 마찬가지로 클래스를 통해 바로 접근 가능하며 인스턴스를 통해서도 접근할 수 있다.

 - 객체 참조 없이 바로 사용할 수 있는 특징이 있어 인스턴스 필드나 메소드 this 키워드 사용할 수 없음

 

2) 인스턴스 메서드

 - static이 붙지 않은 메서드

 

 

'JAVA' 카테고리의 다른 글

[JAVA] 상속  (0) 2025.03.20
[JAVA] final  (0) 2025.03.16
[JAVA] 접근제어자 (private, public, protected, default)  (1) 2025.02.21
[JAVA] this, 생성자, this()  (0) 2025.02.16
[JAVA] 객체지향프로그래밍 vs 절차지향프로그래밍  (0) 2025.02.09