[Java] 37. 메서드 만들기

@_@·2021년 6월 10일

Java 1부

목록 보기
36/41

ㅇ 실제 메소드 만들어보자


항상 프로그램의 시작점이 되는 main 이 있어
정확히는 메인 메소드야
프로그램을 구동 시켜주는 역할을 하는 메소드야

우리가 사실 메소드 계속 사용해왔어
우리가 만든 코드를 사실 메인이라는 이름으로 묶어서 실행하고 있었던거야

그래서 메인 밖에다가 메소드 만들어야 해

ㅇ 예제

  • 메소드 호출 addNumber를 쓰면 매개변수 2개 필요하니까 소괄호에 정수 2개 넣어줘
  • 실행시키면 jvm 이 컴파일을 실행
  • addNumber를 만나서 10이 num1, 5가 num2 자리로 들어와
  • 메소드 안에서 실행문장 실행 되서 리절트가 15가 돼
  • 이 반환값이 메소드가 호출됐던 위치로 다시 되돌아 가
  • addNumber(10, 5);가 15;인 것과 같은거야
  • 이걸 변수에 담아주면 돼. 오른쪽의 값을 왼쪽에 대입해주겠다.

이렇게 메소드 만들면 빨간 줄 뜰꺼야
체인지 에드넘버 투 스태틱 이거 눌러주면 돼
jvm 메모리 구조에 따라 붙은 키워드야.
이거 관련된 얘기는 객체지향 배운 뒤 조금 더 뒤에 설명해주신대




ㅇ 메소드를 만드는 경우는 크게 2가지 케이스

    1. 사전에 먼저 만드는
      내가 프로그램 만들 때 어떤 기능이 있었으면 좋겠어
      이 함수가 필요할 거야 정의를 사전에 하고. 메소드 정의를 우선 시 하는 거야
      그 다음 호출하는 코드를 작성
    1. 코드를 만들다 보니 자연스럽게 중복되는 게 여기 여기 나와
      그러면 메소드를 이용해서 줄여보자
      (글쓰기 퇴고하듯)

2번째 방법 사용법
이클립스에서 제공하는 기능

  • 원하는 부분 설정
    메소드 입장에서 선택정렬을 위해 집어 넣어주는 데이터 - 입력이 되는 데이터
    그 아래는 알고리즘 내에서 사용되는 거니까 저 변수부터가 - 알고리즘

  • 원하는부분 블록 - 리팩토링 - 익스트렉스 메소드

  • 액세스 모디파이어 - 프라이빗이 기본

  • main 안에 있던 코드들이 밑에 셀렉션 솔트 메소드로 만들어져
    (입력은 있지만 반환은 없는 메소드)
    원래 자리에는 selectionSort(array); 만 남아

  • 주의 : 만약 배열을 같이 묶어버리면, 이 배열 만을 탐색하게 돼
    셀렉트넘 92 넣으면 항상 92를 찾는 메소드가 돼

ㅇ 바이너리 서치도 같은 방법으로 해보자

결국 어디서든 쓰는 메소드 만들려면 로우인덱스부터
그리고 바이너리 서치라는 기능만을 넣을거니까  프린트는 빼고


넘버라인에 있는 + 를 클릭하면 메소드의 내용물 떠

입력으로는 내가 탐색하고 싶은 배열과 찾고 싶은 숫자
리턴은 찾고자 하는 중앙값 (정수형)



여기에 뒤에 있는 3번째 케이스 담을까?

메소드 호출해서 이클립스 기능 이용해서 자동완성 틀 생성하고
그 곳에 정의하는 방법

profile
STEP BY STEP

0개의 댓글