●메소드 오버로딩
-메소드의 이름은 같고, 매개변수의 타입, 개수, 순서가 다르면 서로 다른 메소드로 인지하는 문법
-메소드의 목적은 같고 다른게 매개변수의,개수,데이터타입, 순서라면 메소드 이름은 통일해서 써도 된다.
-엄밀히 말하면 서로 다른 메소드이다. 하지만 일관된 메소드 이름을 사용하여 사용자에게 직관적인 이름을 사용하 게 한다
-max메소드인데 자료형의 종류와 개수, 순서가 다른 경우
아래와 같이 같은 'max'이름의 메서드를 만들어도ok이다. (개발자가 메소드이름을 더 직관적으로 지을 수 있음)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
public static void main(String[] args) {
int maxValue = max(56, 87, 23);
System.out.println("56, 87, 23중 가장 큰 값은 " + maxValue + "입니다");
maxValue = max(56, 87, 23, 54);
System.out.println("56, 87, 23, 54중 가장 큰 값은 " + maxValue + "입니다");
maxValue = max(56, 87);
System.out.println("56, 87중 가장 큰 값은 " + maxValue + "입니다");
double maxValueD = max(123.45, 456.56);
System.out.println("123.45, 456.56중 가장 큰 값은 " + maxValueD + "입니다");
}
public static double max(double d, double e) {
double m = (d>e)? d : e;
return m;
}
public static int max(int i, int j) {
int m = (i>j)? i : j;
return m;
}
public static int max(int i, int j, int k, int l) {
int m1 = (i>j)? i : j;
int m2 = (k>l)? k : l;
int m3 = (m1>m2)? m1:m2;
return m3;
}
public static int max(int i, int j, int k) {
int m = (i>j)? i : j;
m = (m>k)? m: k;
return m;
}
|
cs |
'JAVA > 수업 복습' 카테고리의 다른 글
자바 공부기록 32 - 클래스 (0) | 2022.04.22 |
---|---|
자바 공부기록 31 - 메소드 매개변수 - int...a (0) | 2022.04.21 |
자바 공부기록 29 - 메소드 예제 (0) | 2022.04.20 |
자바 공부기록 28 - 메소드 - return값 (0) | 2022.04.20 |
자바 공부기록 27 - 메소드 (0) | 2022.04.19 |