'Java > Overloading' 카테고리의 다른 글
타입의 위치만 바꿔서 메서드 오버로딩 (0) | 2012.04.11 |
---|---|
전달인자의 개수가 다른 메서드 오버로딩 (0) | 2012.04.11 |
전달인자의 자료형이 다른 메서드 오버로딩 (0) | 2012.04.11 |
메소드 오버로딩2 (0) | 2012.04.11 |
메소드 오버로딩 (0) | 2012.04.11 |
타입의 위치만 바꿔서 메서드 오버로딩 (0) | 2012.04.11 |
---|---|
전달인자의 개수가 다른 메서드 오버로딩 (0) | 2012.04.11 |
전달인자의 자료형이 다른 메서드 오버로딩 (0) | 2012.04.11 |
메소드 오버로딩2 (0) | 2012.04.11 |
메소드 오버로딩 (0) | 2012.04.11 |
public class MethodTest04 {//타입의 위치만 바꿔서 메서드 오버로딩 public void make(int a, double b){ System.out.println("int 형 데이터 : "+ a); System.out.println("double 형 데이터 : "+ b); } public void make(double b, int a){ System.out.println("int 형 데이터 : "+ a); System.out.println("double 형 데이터 : "+ b); } public static void main (String[] args){ MethodTest04 mt = new MethodTest04(); mt.make(50,3.14d); System.out.println("=================");//구분선 mt.make(6.78d,100); } }
int 형 데이터 : 50
예비 (0) | 2012.04.11 |
---|---|
전달인자의 개수가 다른 메서드 오버로딩 (0) | 2012.04.11 |
전달인자의 자료형이 다른 메서드 오버로딩 (0) | 2012.04.11 |
메소드 오버로딩2 (0) | 2012.04.11 |
메소드 오버로딩 (0) | 2012.04.11 |
public class MethodTest03 {//전달인자의 개수가 다른 메서드 오버로딩 //정수형 데이터 3개를 형식 매개변수로 갖는 prn 메서드 정의 void prn(int a, int b, int c){ System.out.println(a + "\t" + b +"\t"+ c); } //정수형 데이터2개를 형식 매개변수로 갖는 prn 메서드 정의 void prn(int a, int b){ System.out.println(a + "\t" + b); } //정수형 데이터 1개를 형식 매개변수로 갖는 prn 메서드 정의 void prn(int a){ System.out.println(a); } public static void main(String[] args){ MethodTest03 mt = new MethodTest03(); mt.prn(10,20,30); //정수형 데이터 3개를 실매개변수로 지정 mt.prn(40,50); //정수형 데이터 2개를 실매개변수로 지정 mt.prn(60); //정수형 데이터 1개를 실매개변수로 지정 } }
10 20 30
오버로딩 규칙
1.이름이같아야한다.
2.전달되는 인자의 타입,갯수,순서 에따라 구분된다.
예비 (0) | 2012.04.11 |
---|---|
타입의 위치만 바꿔서 메서드 오버로딩 (0) | 2012.04.11 |
전달인자의 자료형이 다른 메서드 오버로딩 (0) | 2012.04.11 |
메소드 오버로딩2 (0) | 2012.04.11 |
메소드 오버로딩 (0) | 2012.04.11 |
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
예비 (0) | 2012.04.11 |
---|---|
타입의 위치만 바꿔서 메서드 오버로딩 (0) | 2012.04.11 |
전달인자의 개수가 다른 메서드 오버로딩 (0) | 2012.04.11 |
메소드 오버로딩2 (0) | 2012.04.11 |
메소드 오버로딩 (0) | 2012.04.11 |
public class OverloadingTest2 {//메소드 오버로딩2 public void getLength(int n){ //1000 String s = String.valueOf(n); //"1000"으로 바뀜 문자열 //valueOf가 타입을 바꿔서 String으로 바꾼다 getLength(s);//메소드 내에서 또다른 메소드를 호출할 수 있다 } void getLength(float n){//3.14f String s = String.valueOf(n); //"3.14" f는 실제 데이터가 아닌 타입 명시 기에 사라짐 getLength(s); } private int getLength(String str){//"10000" System.out.println("입력한 값의 길이 : "+str.length()); return 0; } public static void main(String[] args){ OverloadingTest2 ot2 = new OverloadingTest2(); ot2.getLength(1000); //getLength로 값의 길이를 측정받는다 ot2.getLength(3.14f); ot2.getLength("10000"); } }
입력한 값의 길이 : 4
예비 (0) | 2012.04.11 |
---|---|
타입의 위치만 바꿔서 메서드 오버로딩 (0) | 2012.04.11 |
전달인자의 개수가 다른 메서드 오버로딩 (0) | 2012.04.11 |
전달인자의 자료형이 다른 메서드 오버로딩 (0) | 2012.04.11 |
메소드 오버로딩 (0) | 2012.04.11 |
public class OverloadingTest {//메소드 오버로딩 public void make(int a){ System.out.println("int 형 데이터 : "+a); } public void make(double b){ System.out.println("double 형 데이터 : "+b); } //int 를 double로 바꾸니 충돌이 일어나지 않는다(메소드 오버로딩) public static void main(String[] args){ OverloadingTest ov = new OverloadingTest(); ov.make(2.0); ov.make(10); //기능이 같기 때문에 알아서 자신이 필요한곳에 들어간다 //기능이 같을 경우만 메소드 오버로딩을 쓴다 } }
double 형 데이터 : 2.0
예비 (0) | 2012.04.11 |
---|---|
타입의 위치만 바꿔서 메서드 오버로딩 (0) | 2012.04.11 |
전달인자의 개수가 다른 메서드 오버로딩 (0) | 2012.04.11 |
전달인자의 자료형이 다른 메서드 오버로딩 (0) | 2012.04.11 |
메소드 오버로딩2 (0) | 2012.04.11 |