Day9

피오·2021년 11월 11일
0
post-thumbnail

이너 피쓰- 이너 피스.

static에 관한 몇 가지

  • 전역 변수에는 1. 클래스변수(static) 2. 인스턴스 변수가 있다.
  • 지역변수는 자동으로 초기화되지 않기 때문에, 초기화 안하고 쓰면 컴파일 에러 난다. 그래서 sonarlint가 그렇게..
  • 지역변수는 static으로 선언하지 못한다. 지역변수는 원래 stack 메모리 영역에 올라가야 하는데, static변수는 클래스 영역에 올라가야 하니까 두 컨셉이 충돌.
  • 비슷한 느낌으로, static메서드에서는 인스턴스 변수를 사용하지 못한다. 인스턴스 생성 없이 호출할 수 있는 메서드에서 인스턴스를 생성해야 사용할 수 있는 전역변수를 사용한다는 게 말이 안됨.

main메서드에 관한 몇 가지

  • main메서드에 매개변수를 선언하지 않으면 JVM이 클래스를 실행할 수 없다.
  • main메서드를 private으로 선언해도 실행할 수 없다.
  • 서로 다른 클래스에서 main메서드를 호출할 수 있다. main메서드도 여타 메서드와 다를 바 없으나, JVM이 실행하는 기본 메서드로 호출되려면 위와 같은 규칙을 조금 지켜야 할 뿐이다.
profile
블로그 이전했습니다. https://pzbg.tistory.com/

0개의 댓글