정적변수와 메소드, static

  • static 키워드를 붙이고 안붙이고의 차이점은 메모링 적재되는 시기에서 부터 시작된다.
    static 키워드를 붙인 멤버변수나 메소드는 인스턴스를 생성하지 않아도, JVM이 클래스를 읽어들일때, 자동적으로 메모리를 할당시켜 준다.
  • 자바 프로그램이 실행될때 메인 메소드(public static void main(String[] args))에 static 키워드가 붇은 이유는 main 메소드는 자바 애플리케이션이 처음으로 실행되는 메소드이고, 메모리에 적재되어 있어야 실행이 가능하기 때문이다.
    (메소드는 자바프로그램을 컴파일하여 실행시킬 경우 자바 런타임 인터프리터가 제일 먼저 main() 메소드를 찾아서 실행하게 된다.)
  • static 키워드를 붙이면 메모리할당이 딱 한번만 이루어지기 때문에, 메모리 사용에 이점을 보게 된다.
    또한, static을 사용하는 또한가지 이유로 공유의 목적을 들 수 있다.
    static 키워드를 설정하면 같은 곳의 메모리 주소만을 바라보기 때문에, static 변수의 값을 공유하게 되는것이다.
  • 보통 static 메소드는 유틸리티성 메소드를 작성할때 많이 사용된다.

예외처리 (Exception Handling)

  • 오류(Error)는 시스템에 비정상적인 상황이 생겼을때 발생, 시스템 레벨에서 발생,
    예외(Exception)는 개발자가 구현한 로직에서 발생, 발생할 상황을 미리 예측하고 처리가능함.

  • 자바에서는 try..catch, throw 등을 사용하여 예외처리한다.
  • Exception은 크게 두가지로 구분된다.
    1) Runtimme Exception
    실행시 발생하는 에외, 발생할 수도 있고 안할수도 있는 경우에 적용 Unchecked Exception

    명시적인 처리를 강제하지 않음.
    2) Exception
    컴파일시 발생하는 예외, 프로그램 작성시 이미 예측가능한 예외를 작성할 때 사용

    Checked Exception

    반드시 예외처리해야함.

참조1
참조2