2016-03-06

6. java - 메소드

6.1 메소드(method)

   
  ① 해당 메소드의 접근 허용 범위를 지정한다.(private, protected, public...)
  ② 메소드 실행 후 반환할 값에 대한 데이터 타입을 지정한다.
      (int, double, boolean, void...)
  ③ 메소드가 하는 작업에 따라 적절한 이름을 붙인다.
  ④ 메소드 호출 측에서 넘겨받은 변수, 메소드 내에서 이용


 ex)















  

   ① main 메소드 내에서 add 함수를 호출, 매개 변수로 정수 두개를 넘김
   (add 메소드 : 정수형을 반환, 매개변수는 두 정수형 변수)
   ② 매개 변수로 받은 두 정수형 변수를 더해 result에 저장
   ③ 리턴 타입에 맞게 정수형 변수(result)를 반환
   ④ main 메소드로 돌아와 r에 반환된 값을 대입


   * 메소드는 호출이 되어야 실행된다.

   * 메소드 호출 측의 매개변수와 해당 메소드의 매개변수는 타입,순서,갯수가 같아야 한다.
   * return : 1) 값 반환 , 2) 메소드 종료


6.2 재귀 메소드

    : 메소드 내에서 자기 자신을 호출하는 메소드
  
 ex) 3! 을 위한 재귀메소드


















 * 코드 실행 순서


 ① main에서 fac(3)호출

 ② 조건을 만족하지 않으므로
     3 * fac(2)호출
     아직 fac(3)함수는 종료되지 않음

 ③ 조건을 만족하지 않으므로
     2 * fac(1) 호출
     아직 fac(2)함수는 종료되지 않음

  ④ a==1 조건을 만족
      1을 반환 
      fac(1)종료

  ⑤ 반환된 값(1)으로 2*1을 반환
      fac(2) 종료

  ⑥ 반환된 값(2)으로 3*2를 반환
      fac(3) 종료
      r = 3*2*1의 값이 들어감


  * return 내에서 함수 호출이 일어나기 때문에 호출된 함수가 종료되기 전까지 해당 함수는 종료되지 않음
 


댓글 없음 :

댓글 쓰기