728x90

메서드: 객체가 가지고 있는 동작, 기능
//메서드 정의
접근제한자 리턴타입 메소드명(인수1, 인수2 ...){
수행코드;
return 반환값;
}
리턴타입: 수행된 후에 반환하는 결과의 자료형, 아무 결과 반환 안할시에 void씀
메서드의 결과 값은 하나의 형태로 만들어진다.
변수는 데이터를 하나의 형태로 저장한다.
메서드의 이름이 변수 역할을 한다

위의 코드에서 결국 add(a,b)=sum이 된다 => 메서드의 이름이 변수역할을 한다.
매개변수 전달 기법
Call By Value(값 전달)

Call By Reference(번지 전달)

번지를 전달해 줌으로써 addArray메서드에서 배열 a에 접근하여 해당 값을 사용가능하다
메서드 오버로딩
: 하나의 클래스 내에서 동일한 이름의 메서드를 여러개 사용할 수 있는 객체지향 기법
전제조건-> 매개변수의 개수, 매개변수의 타입과 같은 메서드의 시그니처가 달라야 한다.
=> 근데 같은 이름의 여러 메서드가 존재한다면 해당하는 메서드를 찾는데 시간이 걸리지 않을까??
메서드의 오버로딩은 정적 바인딩으로 구현된다
정적 바인딩: 컴파일 시점에서 사용될 메서드가 결정되는 바인딩
public int add(int a, int b){
int sum=a+b;
return sum;
}
public float add(float a, float b){
float sum=a+b;
return sum;
}
이와 같이 적어놧을때 컴파일 단계에서는
public int add_int_int(int a, int b){
int sum=a+b;
return sum;
}
public float add_float_float(float a, float b){
float sum=a+b;
return sum;
}
위와 같이 선언해 놓고
add(10,50);을 호출햇을때 add_int_int(10,50); 으로 바꿔서 호출되기 때문에 => "검색, 속도의 성능이 떨어지지 않는다."
728x90
'Backend > JAVA' 카테고리의 다른 글
[패캠/JAVA]클래스(모델)의 종류 (0) | 2023.07.25 |
---|---|
[패캠/JAVA] 객체, 클래스 (0) | 2023.07.20 |
[패캠/JAVA] 반복문 for,while (0) | 2023.07.18 |
[패캠/JAVA] JAVA기초(2) (0) | 2023.07.18 |
[패캠/JAVA] 자바 기초(1) 자바 소개~자료형 (0) | 2023.07.12 |