-
[Java] method언어/Java 2021. 1. 1. 20:25
메소드의 매개 변수에 ... 의미
메소드에서 매개 변수가 얼마나 들어올 지 모를 때, ...으로 표현합니다.
public void test(int... i) { i[0] // 1 } public void test1() { test(1); test(new int[] {1,2,3}); }
return type이 void에서 return;의 의미
return type이 void 에서 return을 사용할 수 있는데 이 의미는 어떤 값을 반환하는 것이 아니라 해당 메소드를 바로 종료하는 의미입니다.
public void test() { int i = 0; while (true) { if (i == 5) return; // i가 5인 경우, 해당 메소드를 빠져나감 i++; } }
오버로딩
클래스 내 같은 이름의 메소드를 여러개 선언하는 것을 메소드 오버로딩이라 합니다. 메소드 오버로딩의 조건은 매개 변수의 타입, 개수, 순서 중 최소 1개만 다르면 됩니다.
public void test() { } public int test() { return 0; } // return type은 다르지만 매개 변수 부분이 동일하므로 오류 발생 // 전부 사용 가능 public void test() { } public int test(int i) { return i; } public int test(int i, int j) { return i; } public int test(int i, String s) { return i; } public int test(String s, int i) { return i; } public void test(String s) { }