gwooden_코린이
java_오버로딩_221125(5일차) 본문
오버로딩 - 뚝같은 내용을 가진 메서드를 여러개 만들 수 있다.
여기서 add라는 메서드를 가지고 매개변수만 정수형인지 실수형인지 두가지 경우로 만들어서 Main 클래스에서 결과값을 도출하게 되면 Main에서 변수값이 정수면 int num1 + num2로 리턴될 거고 반대로 실수이면 double num1 + num2로 리턴되서 값이 출력된다.
public int add(int num1, int num2) {
System.out.println("정수들의 합계");
return num1 + num2;
}
/* ex)
* (위와 동일하게 작동할때)
* (매개변수를 바꿔야 됨 동일한 매개변수가 2개 이상이면 실행 오류)
(아래서 매개변수 int 2개 중 하나를 double로 변경하거나 등등)
public int add(int num1, int num2) {
System.out.println("다른작업을 수행함");
return num1 * num2;
}
*/
public double add(double num1, double num2) {
System.out.println("실수들의 합계");
return num1 + num2;
}
package 오버로딩;
public class Main {
public static void main(String[] args) {
Calc calc = new Calc();
System.out.println(calc.add(5, 10));
System.out.println(calc.add(5.1, 10.5644));
System.out.println(calc.add("abc", "가나다"));
}
}
※결과값 정수들의 합계 15 실수들의 합계 15.664399999999999 문자들의 합계 abc가나다 |
package 오버로딩;
public class Calc {
public int add(int num1, int num2) {
System.out.println("정수들의 합계");
return num1 + num2;
}
public double add(double num1, double num2) {
System.out.println("실수들의 합계");
return num1 + num2;
}
public String add(String num1, String num2) {
System.out.println("문자들의 합계");
return num1 + num2;
}
}
package 오버로딩;
public class Main {
public static void main(String[] args) {
Calc calc = new Calc();
calc.showInfo();
System.out.println(calc.add(5, 10));
calc.showInfo();
System.out.println(calc.add(5.1, 10.5644));
calc.showInfo();
System.out.println(calc.add("abc", "가나다"));
}
}
※결과값 오버로딩 연습중 정수들의 합계 15 오버로딩 연습중 실수들의 합계 15.664399999999999 오버로딩 연습중 문자들의 합계 abc가나다 |
package 오버로딩;
public class Calc {
public void showInfo() {
System.out.println("오버로딩 연습중");
}
public String add(String num1, String num2) {
//메서드 안에도 메서드를 넣을 수 있다.
showInfo(); <-- Calc 클래스에서는 객체를 안 적어도 실행
//그리고 String add 매서드를 여러개 출력하면 자동으로 위에 showInf();가 붙어서 따라온다
System.out.println("문자들의 합계");
return num1 + num2;
}
public int add(int num1, int num2) {
System.out.println("정수들의 합계");
return num1 + num2;
}
public double add(double num1, double num2) {
System.out.println("실수들의 합계");
return num1 + num2;
}
}
'java > 5일차' 카테고리의 다른 글
java_접근제한자_221125(5일차) (0) | 2022.11.25 |
---|---|
java_생성자_221125(5일차) (0) | 2022.11.25 |
java_재귀호출_221125(5일차) (0) | 2022.11.25 |
java_클래스02_221125(5일차) (0) | 2022.11.25 |
java_클래스_221125(5일차) (0) | 2022.11.25 |