변수에서 그랬던 것과 같이, 메소드 앞에 static이 붙어 있으면 클래스 메소드 붙어 있지 않으면 인스턴스 메소드이다. 그렇다면 클래스를 정의할 때, 어느 경우에 static을 사용해서 클래스 메소드로 정의해야하는 것일까? 인스턴스 메소드는 인스턴스 변수와 관련된 작업을 하는, 즉 메소드의 작업을 수행하는데 인스턴스 변수를 필요로 하는 메소드이다. 그런데 인스턴스를 생성해야만 만들어지므로 인스턴스 메소드 역시 인스턴스를 생성해야만 호출할 수 있는것이다. 반면에 메소드 중에서 인스턴스와 관계없는(인스턴스 변수나 인스턴스 메소드를 사용하지 않는) 메소드를 클래스 메소드(static메소드)로 정의한다. class MyMath2 { long a, b; // 인스턴스 변수 a, b만을 이용해서 작업하므로 매개변..