"오버로딩"의 두 판 사이의 차이

위키원
이동: 둘러보기, 검색
잔글 (구조)
(구조)
2번째 줄: 2번째 줄:
  
 
== 구조 ==
 
== 구조 ==
 +
하나의 클래스 안에 같은 이름을 가지고 있는 메소드를 여러개 정의한다. 매개변수의 개수나 유형을 다르게 하여 같은 이름의 메소드들이 다른 결과값을 출력할 수 있게 한다.
  
public class 클래스 이름 {
+
public class 클래스이름 {
    // A메소드 호출
+
    // A메소드 호출
    void A메소드(){
+
    void A메소드() {
        System.out.println("매개변수 = 없음");
+
        System.out.println("매개 변수값 = 없음");
    }
+
    }
 
+
    // A메소드에 매개변수a로 int형 호출
    // A메소드에 매개변수a로 int형 호출
+
    void A메소드(int a) {
    void A메소드(int a){
+
        System.out.println("매개 변수값 = " + a);
        System.out.println("매개변수 = "+ a);
+
    }
    }
+
    // A메소드에 매개변수a로 char형 호출
 
+
    void A메소드(char a) {
    // A메소드에 매개변수a로 char형 호출
+
        System.out.println("매개 변수값 = " + a);
    void A메소드(char a){
+
    }
        System.out.println("매개변수 = " + a);
+
}
    }
 
}
 
  
 
== 특징 ==
 
== 특징 ==

2020년 8월 4일 (화) 14:02 판

오버로딩(overloading)이란 하나의 클래스(class)에 같은 이름을 가진 메소드(method)를 여러 개 정의하는 것을 말한다. 예를 들어, println(int x)를 정의한 후 다시 println(char x)를 추가함으로써, 정수(int)와 문자(char)를 모두 출력할 수 있다. 오버로딩을 통해 메소드 이름만 같고, 인수의 개수나 타입이 서로 다른 여러 개의 메소드를 만들 수 있다.

구조

하나의 클래스 안에 같은 이름을 가지고 있는 메소드를 여러개 정의한다. 매개변수의 개수나 유형을 다르게 하여 같은 이름의 메소드들이 다른 결과값을 출력할 수 있게 한다.

public class 클래스이름 {
   // A메소드 호출
   void A메소드() {
       System.out.println("매개 변수값 = 없음");
   }
   // A메소드에 매개변수a로 int형 호출
   void A메소드(int a) {
       System.out.println("매개 변수값 = " + a);
   }
   // A메소드에 매개변수a로 char형 호출
   void A메소드(char a) {
       System.out.println("매개 변수값 = " + a);
   }
}

특징

종류

같이 보기