클래스 함수

소정·2022년 12월 9일
0

Java

목록 보기
1/23

java

static의 특징

  • static으로 선언된 함수(메서드)나 변수는 JVM이 실행됨과 동시에 초기화됨
  • 인스턴스 객체생성 없이 메서드 호출 가능
  • 자바 프로그램을 시작하면 static으로 지정된 메서드를 먼저 찾아 먼저 메모리에 할당한다
  • static으로 지정된 메서드가 여러개일 경우 객체를 생성하는 것과 상관없이 모두 메모리에 할당하고 "main"으로 이름이 만들어진 메서드를 시작점 메서드로써 호출된다
  • static으로 선언된 메서드는 모든 인스턴스가 공유한다
public class Dog {
	public final static String DOG_NAME = "mui";

    public static int sAge = 0;

    public dogAge() {
        sAge++;
    }
} 

Dog dog1 = new Dog();
Dog dog2 = new Dog();
Dog dog3 = new Dog();

System.out.println(Dog.DOG_NAME); //클래스로 접근
System.out.println(dog1.DOG_NAME); //인스턴스 생성 후 접근
System.out.println("age of mui : " + Dog.sAge);

결과

mui
mui
3

생성한 dog1 dog2 dog3이 하나의 인스턴스를 바라보기 때문에 3이라는 결과가 나옴
멤버 메소드와 구분하기 위해 클래스를 통해서만 호출하는 것이 좋다

profile
보조기억장치

0개의 댓글