자바2016. 1. 4. 08:39

정적 메소드 vs 일반 메소드

일반 메소드를 실행하기 위해선 객체가 필요했지만 정적 메소드는 실행하기 위해 객체가 필요 없고 클래스명을 객체처럼 사용한다. ex. Math.min(  );

정적 메소드를 만들려면 앞에 static을 붙인다. ex> public static int temp(int a){ ..............}

정적 메소드에서는 인스턴스 변수를 사용할 수 없다. 또한 정적 메소드 내부에서도 정적 메소드가 아닌 일반 메소드를 사용할 수 없다.


정적 변수

인스턴스 변수 앞에 static을 붙인다. 정적 변수는 모든 메소드에서 인스턴스를 공유하고 싶을 때 사용한다. 값이 여러 곳에서 사용되기 위해 정적 변수를 사용하는데 값이 헷갈리지 않도록 주의해야 한다. 정적 변수는 미리 초기값이 지정되어 있어야 한다.

ex> private static int a=10;