Java/Java Concept

[Java] 메소드 오버로딩 overloading

군우 2018. 1. 19. 17:51

이름이 같은 method 가 존재하더라도, 매개변수의 자료형과, 그안의 갯수가 하나라도 다르면 중복을 허용한다.

반환형이 다른것은 메소드 오버로딩이 성립이 되지 않는다.

int func(){}

boolean func(){} 

성립안됨!


char형으로 넘기게되면

int형 double형 으로 둘다 형변환이 가능하기 때문에 

가장 가까운  int 형으로 메소드가 실행된다. 안좋은 코드이다.


생성자도 오버로딩이 가능하다.

생성자 내에서 꼭 생성자 내에 한해서 오버로딩된 다른 생성자의 호출을 허용한다. 그 키워드가 this이다

public func(int a, int b){

k =b;

}

public func(int a){

this(a, 0)

}

이런식으로 this를 통해 오버로딩된 다른 생성자를 부른다.