반응형
package org.opentutorials.javatutorials.overloading;
class Calculator {
int num1, num2;
int num3 = 0;
public void setOprands(int num1, int num2) {
System.out.println("setOprands 2");
this.num1 = num1;
this.num2 = num2;
}
public void setOprands(int num1, int num2, int num3) {
System.out.println("setOprands 3");
this.num1 = num1;
this.num2 = num2;
this.num3 = num3;
}
public void sum() {
System.out.println(this.num1 + this.num2 + this.num3);
}
public void avg() {
System.out.println((this.num1 + this.num2 + this.num3) / 2);
}
}
public class CalculatorDemo {
public static void main(String[] args) {
Calculator c1 = new Calculator();
c1.setOprands(10, 20);
c1.sum();
c1.avg();
c1.setOprands(20, 20, 20);
c1.sum();
c1.avg();
}
}
출력값
setOprands 2
30
15
setOprands 3
60
30
같은 이름의 메소드, 다른 타입의 매개변수
하지만 리턴 타입은 같아야함
package org.opentutorials.javatutorials.overloading;
public class OverloadingDemo {
void Test() {
System.out.println("void Test()");
}
void Test(int arg1) {
System.out.println("void Test(int arg1)");
}
void Test(String arg1) {
System.out.println("void Test(String arg1)");
}
//int Test() { //error
// System.out.println("int Test()");
//}
public static void main(String[] args) {
OverloadingDemo od = new OverloadingDemo();
od.Test();
od.Test(1);
od.Test("hello");
}
}
출력값
void Test()
void Test(int arg1)
void Test(String arg1)
반응형
'Java' 카테고리의 다른 글
[Java] 클래스 접근 제어자 (0) | 2021.03.14 |
---|---|
[Java] 메서드 접근 제어자 (0) | 2021.03.13 |
[Java] overrding 오버라이딩 (0) | 2021.03.09 |
[Java] 생성자, super (0) | 2021.03.09 |
[Java] 생성자 (0) | 2021.03.08 |