public static int sum (int i1, int i2) {
int sum=0;
for (int i=i1; i<=i2;i++)
sum+=i;
return sum;
}
o접근 지정자 : 메서드의 접근 범위 알려줌
ex) public
ostatic : 객체를 생성하지 않고 실행 가능
o반환 타입 : 반환할 데이터가 없다면 void 사용
ex) int
o매개변수 : 외부에서 전달받는 변수
ex)int i1, int i2
o지역 변수 : 매개변수나 메서드 본체에 선언된 변수
ex)i1, i2, sum
return문을 만나면, 실행 도중에 호출한 메서드로 제어 넘김
ex) if문이 만족하면 바로 main 메서드로 돌아옴
메서드를 호출하면 인수값의 복사본을 매개변수로 전달
매개변수 값의 변경은 인수값 복사본의 변경과 동일
-->매개변수 값 변경은 인수에 영향을 주지 않음
인수와 매개변수 이름이 같아도 상관 없음
increment() 호출한 전후로 인수 x값 변화없음
메서드 호출 시
인수 x를 매개변수 n에 대입 (X)
인수 x 복사한 값을 매개변수에 대입 (O)
자바는 메서드 시그니처를 사용해 메서드를 구분
메서드 시그니처
:메서드 이름, 매개변수의 개수, 매개변수의 데이터 타입, 매개변수의 순서
메서드 오버로딩
:메서드 이름은 같지만 메서드 시그니처가 다른 메서드를 정의하는 것
기능은 같은데 데이터 타입이 다르다고 메서드 이름을 다르게 지정하면 가독성이 떨어짐