본문 바로가기
back-end/JAVA

10) 객체지향-메서드의 호출(call), 메서드의 실행흐름

by 모두의 향연 2021. 5. 12.
728x90
반응형

10-1) 메서드 호출(call)

메서드 호출도 간단합니다. 누구를 불러 일을 시키고 싶을 때 이름 부르는 것과 같습니다.

메서드 이름(값 1, 값 2, …);  //메서드를 호출하는 방법

 

ex) print99danAll(); //void print99danAll()을 호출

     int result = add(3,5);  //int add(int x, int y)를 호출하고, 결과를 result에 저장

 

메서드 print99danAll의 경우 매개변수가 없어 괄호 안에 아무것도 없고, 반환 값도 없기 때문에 void를 씁니다.

하지만, add메서드의 경우 매개변수도 존재하고(3, 5) 반환값도 존재하기 때문에(result) 매개변수로 int x, int y를 쓰고 반환 값으로 int result를 씁니다.

 

int add(int x, int y){
     int result = x + y;
     return result;
}

이런 메서드를 만들고 int result = add(3,5);을 써서 메서드를 호출해봅시다.

x값에 3을 넣고 y값에 5를 넣습니다. 반환 값이 int니까 result의 타입도 int입니다.

그럼 x+y는 3+5이므로 8이 되고, result는 8이 됩니다.

 

 

10-2) 매개변수(parameter)

int x, int y와 같은 매개변수를 '파라미터'라고 부르기도 합니다.

parameter의 뜻은 '복사본'이라 하는데, 메서드를 호출한 쪽에서(int x, int y) add메서드로 전달한다 해서 '매개 역할'을 한다 해서 지어진 이름입니다. 중간 매개체 역할을 한다 하여 지어진 이름입니다.

 

 

 

10-3) 메서드의 실행 흐름

메서드의 실행흐름

①main메서드에서 메서드 add를 호출한다. 인수 1L, 2L이 메서드 add의 매개변수 a, b에 각각 복사(대입)된다.

②메서드 add의 괄호{} 안에 있는 문장들이 순서대로 수행된다.

③메서드 add의 모든 문장이 실행되거나 return문을 만나면, 호출한 메서드(main메서드)로 되돌아와서 이후의 문장들을 실행한다.

 

 

*유튜브 남궁성 선생님의 `자바의 정석`을 참고하여 만들었습니다*
*자세히 보고 싶은 분들은 유튜브 가서 보시면 되고요! 저는 개인적으로 공부하는 게 목적입니다*

 

728x90
반응형