본문 바로가기
JAVA/절차지향

메소드 method~( 함수 function~) +리턴

by SEOKIHOUSE 2023. 3. 9.

메소드나 객체지향과 같은 개념들은 웅장하고, 결함이 없고, 유지보수가 쉬운 애플리케이션을 만들기 위한 기법들

1)main (자바-개발자)사이의 promise~ 하고자 하는 작업을 반드시 public static void main(String[] args)가 이끄는 중괄호 안에 실행되기를 기대하는 로직을 위치시켜야 한다

void: 메소드의 리턴값은 존재하지 않는다는 뜻 -> 리턴을 안썼음


2)메소드 정의와 호출

superman() -> 위에 코드랑 똑같은내용 그냥 호출한거임


3)메소드가 없으면..? 조오오온나 불편

메소드 -> 유지보수 good, 코드량 줄고, 재활용 가능


4)입 출력

입력 값에 따라서 출력 값을 달리 제공한다면 재활용성이 높아져서 편리해짐~

-->> j라는 변수 정의하고 정수만 받을 수 있음
실제로는 매개변수 인자 개념 혼용해서 쓰는 경우도 있음

if 원하는 범위 값만 갖고 오고 싶다면?

5) 출력 (return)

return에서 메소드를 반드시 종료시키고 출력값(numbering)으로 밖으로 반환

public static String superman(int init, int limit)

--->string a 같이 superman이라는 메소드는 반드시 문자열을 리턴한다

String result = superman(1, 5);

--->string result로 문자열을 받아줘야함


6)리턴을 굳이 쓰는이유?

굳이 이렇게 복잡하게 데이터를 리턴하는 이유는----> 부품으로서의 가치를 높이기 위해서

만약 이 메소드가 출력한 값을 화면에 출력하는 것이 아니라 파일에 기록하고 싶다면  or 이메일로 보내고 싶다면 어떻게 해야 할까? 3개의 메소드를 만들고 용도에 따라 코드를 재작성할 수도 있지만 더 좋은 방법은 숫자를 출력하고, 숫자를 파일에 기록하고, 숫자로 이메일을 보내는 작업으로부터 숫자를 계산하는 로직을 분리하는 것. superman은 자신이 어떻게 사용될지 모르기 때문에 누구든지 superman이라는 메소드를 호출할 때 초기값과 마지막 값을 입력하면 superman은 숫자를 문자열의 형태로 반환하면 되는 것.

 

buffer~~~~ 머시기머시기-->>  out.txt 라는 파일에 superman이라는 메소드가 반환한 값을 저장+ 무시라고 적힌 부분은 배우지 않은 영역


*return은 메소드를 중단시키는 역할도 한다

return이 여러번 등장하지만 중복적으로 실행이 안되기 때문에 동작하고                                  + none을 없앤다면 컴파일이 안된다

 

'JAVA > 절차지향' 카테고리의 다른 글

리턴 추가설명  (0) 2023.03.10
입출력(io) - String[]args  (0) 2023.03.09
배열 array  (0) 2023.03.09
반복문  (0) 2023.03.09
논리 연산자(and or ..)  (0) 2023.03.09