public class MethodTest02 {//전달인자의 자료형이 다른 메서드 오버로딩 //int 형 데이터에 대해서 절대값을 구하는 메서드 정의 int abs(int num){ if(num<0) num=-num; return num; } //long 형 데이터에 대해서 절대값을 구하는 메서드 정의 long abs(long num){ if(num<0) num=-num; return num; } //double 형 데이터에 대해서 절대값을 구하는 메서드 정의 double abs(double num){ if(num<0) num=-num; //음수일 경우 양수로 return num; } //전달되는 타입만 다르고 로직은 모두 같다 public static void main(String[] args){ MethodTest02 mt = new MethodTest02(); //전달인자가 int형이므로03:의 int형 데이터에 대해서 절대값을 구하는 메서드 호출 int var01=-10, var02; //같으므로 int로 찾아 간다 var02=mt.abs(var01); System.out.println(var01 + "의 절대값은 . -> "+var02); //전달인자가 long형이므로09:의 long형 데이터에 대해서 절대값을 구하는 메서드 호출 long var03=-20L, var04; var04=mt.abs(var03); System.out.println(var01 + "의 절대값은 . -> "+var04); //전달인자가 double형이므로15:의 double형 데이터에 대해서 절대값을 구하는 메서드 호출 double var05=-3.4, var06; var06=mt.abs(var05); System.out.println(var05 + "의 절대값은 . -> "+var06); } }
-10의 절대값은 . -> 10
-10의 절대값은 . -> 20
-3.4의 절대값은 . -> 3.4
'Java > Overloading' 카테고리의 다른 글
예비 (0) | 2012.04.11 |
---|---|
타입의 위치만 바꿔서 메서드 오버로딩 (0) | 2012.04.11 |
전달인자의 개수가 다른 메서드 오버로딩 (0) | 2012.04.11 |
메소드 오버로딩2 (0) | 2012.04.11 |
메소드 오버로딩 (0) | 2012.04.11 |