ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [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) { }


    댓글