Java Study

메서드(method)란?

Z00_HWAN_99 2024. 6. 20. 14:09
728x90
반응형

메서드(method)란?

  • 프로그램에서 반복되는 특정 작업을 수행하기 위한 코드의 집합.
  • Ex) System.out.println() : 콘솔에 메세지를 출력하는 기능의 함수.

메서드의 종류(유형)?

  • 표준 라이브러리(J2SE API) 메서드
    1. 자바 클래스 라이브러리에 이미 정의되어 있는 메서드.
    2. 사전 정의 메서드 또는 내장 메서드라고도 함.
    3. 언제든 프로그램에서 호출하기만 하면 사용할 수 있음.
  • 사용자 정의 메서드
    1. 사용자 또는 프로그래머가 작성한 메서드.
    2. 필요에 따라 추가, 보완 , 수정, 삭제할 수 있음.

메서드의 필요성?

  • 재사용성 : 코드의 중복 작성을 방지. 특정 메서드를 호출하여 코드를 재사용할 수 있음.
  • 가독성 : 코드를 쉽게 읽을 수 있음. 코드를 쉽게 이해할 수 있음.
  • 유지보수성 : 코드를 더 쉽게 유지할 수 있음. 변경 시 쉽게 리팩토링할 수 있음.

메서드의 기본 구조

  • public : 접근 제한자(access modifier) - Ex) public, protected, private, default etc
  • void : 반환 유형(return type) - 메서드의 리턴 유형을 결정. 해당 반환값의 타입을 결정한 후, 약속한 타입의 값을 return해줘야함.
  • main : 메서드명(method name) - 메서드가 호출될 때 사용되는 이름
  • String[] args : 매개 변수 목록
public class Main {
    public static void main(String[] args)  //선언부
    {
                                             //구현부
    }
}

 

메서드 호출 예제

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class MethodEX1 {


  public static void main(String[] args) throws IOException {

    //주사위 게임을 몇개의 그룹에서 몇명이 참하며 여러명이 참여하여 한버씩 주사위를 던질 수 있도록 프로그램 설계

    MethodEX1 mex1 = new MethodEX1();
    for (int i = 0; i < 3; i++) {
      int group = mex1.settingGroup();
      int n = mex1.playerSetting();
      mex1.dicePlay(group, n);
    }
  }

  int settingGroup() throws IOException {
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    System.out.print("참여자의 그룹수를 입력해주세요 : ");
    int group = Integer.parseInt(br.readLine());
    return group;
  }

  int playerSetting() throws IOException {
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    System.out.print("참여자의 인원수를 입력해주세요 : ");
    int n = Integer.parseInt(br.readLine());
    return n;
  }

  void dicePlay(int group, int n) {

    for (int j = 0; j < group; j++) {
      for (int i = 1; i <= n; i++) {
        int num = (int) (Math.random() * 6) + 1;
        if (num == 1) {
          System.out.println("1번이 나왔습니다.");
        } else if (num == 2) {
          System.out.println("2번이 나왔습니다.");
        } else if (num == 3) {
          System.out.println("3번이 나왔습니다.");
        } else if (num == 4) {
          System.out.println("4번이 나왔습니다.");
        } else if (num == 5) {
          System.out.println("5번이 나왔습니다.");
        } else {
          System.out.println("6번이 나왔습니다.");
        }
      }
      System.out.println("---------" + (j + 1) + "번 그룹 끝---------");
    }
  }
}

 

 

https://github.com/bottomsUp-99

 

bottomsUp-99 - Overview

Backend Developer. bottomsUp-99 has 10 repositories available. Follow their code on GitHub.

github.com

 

728x90
반응형