자바의정석
-
오버로딩 (overloading)2024.03.06
오버로딩 (overloading)
2024. 3. 6. 20:09
오버로딩 : 한 클래스 내에 같은 이름의 메서드를 여러 개 정의 하는 것을 '메서드 오버로딩' 또는 '오버로딩' 이라한다.
✔오버로딩의 조건
1. 메서드 이름이 같아야한다.
2. 매개변수의 개수 또는 타입이 달라야한다.
✔오버로딩의 예
대표적인 예는 println메서드이다.
println메서드는 호출 시 매개변수로 지정하는 값의 타입에 따라 호출되는 println메서드가 달라진다.
ex
long add(int a, long b) {return a+b;}
long add(long a, int b) {return a+b;}
두 메서드는 매개변수의 값에 의해 호출 될 메서드가 구분될 수 있으므로 중복된 메서드가 아닌 오버로딩으로 간주한다.
✔오버로딩의 장점
1. 메서드들이 (println처럼) 하나의 이름으로 정의 될 수 있다. (기능 예측 가능)
2. 이름을 절약할 수 있다.
✔가변인자와 오버로딩
가변인자 : 메서드의 매개변수를 동적으로 지정해 줄 수 있다. '타입...변수명'과 같은 형식으로 선언한다.
ex
String concatenate(String s1, String s2){...}
String concatenate(String s1, String s2, String s3){...}
String concatenate(String s1, String s2, String s3, String s4){...}
//가변인자를 사용
String concatenate(String...str){...}
'💻 IT > 자바' 카테고리의 다른 글
생성자(Constructor) (0) | 2024.03.06 |
---|---|
객체 지향 프로그래밍 (0) | 2024.03.05 |
[자바] LocalDateTime으로 현재 일 + 누적 일 출력하기 (0) | 2023.12.13 |