본문 바로가기
> 프로그래밍 언어/JAVA

[ch6-17~19] 메서드 호출

by 자몽주스 2023. 1. 24.
728x90
반응형

메서드를 호출해야 괄호 안 문장 실행됨

 

<메서드 호출 방법>

메서드 이름을 먼저 작성

메서드가 작업하는데 필요한을  

괄호안에 적어준다

(없을 때는 아무것도 안써도 됨)

ex) print99danAll();

구구단을 출력하는데

딱히 

add 메서드의 경우엔이 2개 있음

(덧셈 하려면 필요한 값들)

값 두 개 주면 int 값 출력 한다는 뜻

 

print99danAll 메서드

반환타입은 void

즉, 출력이 없다는 뜻.

내가 작업을 수행하고

그 결과를 줄 게 없다는 의미

<add 메서드 호출 예시>

3하고 5가

매개변수의 x와 y에 대입됨

3+5 의 값 8이

int result 에 저장된다

 

그리고 result 변수

메서드 수행 결과로 반환된다

(return)

 

메서드 호출할 때

int result

이 부분이 없어도 된다

뒤에 add(3,5)가 메서드 호출 부분이니까

print99danAll과 달리 

작업 결과 저장이 필요해서 

add는 변수가 필요 (result)

int x 와 int y : 매개변수

메서드를 호출한 쪽에서 준 값을 

add 메서드한테 전달하는

 중간역할

(중간 매개체 역할)

을 하기 때문

"파라미트"

라고도 함

생성순서

<MyMath라는 클래스를 사용하는 사칙연산 예제>

먼저 class를 작성하고

객체를 생성하고

객체가 가진 메서드들을 사용(메서드 호출)

add 메서드를 호출하면

 

5하고 3이 하단의 a, b로 복사된다

a = 5

b = 3

8 이 result에 들어간다

그리고 result를 결과로 반환함

다시 호출했던 곳으로 돌아간다

그러면

long result1 = 8;

이 된다

 

심부름 시키고 다시 돌아오는 느낌

 

메서드는 클래스 영역에만 정의 가능

 

8을 변수에 저장한다음에 

반환(return)

위의 두 줄을  return a + b 와 같이

간단히 한 줄로 할 수 있다

<메서드가 호출됐을 때 실행흐름 정리>

1) 객체(인스턴스)를 생성한다

2) 메서드를 호출한다

 add 메서드를 호출하는데

add 메서드들을 작업 때

필요한 들을 준다

 

그러면 값들이 매개변수에 복사됨

(long a, long b)

아까처럼 호출한 곳으로

result 값이 되돌아 감

 

그럼 3L이 value에 대입됨

 

728x90
반응형