본문 바로가기
Programming/Java

[자바/Java] 메소드1 - 정의

by 코딩하는 랄로 2023. 9. 28.
728x90

Method란

메소드(Method)란 흔히 프로그래밍에서 함수라고하는 개념과 똑같다. 자바에서는 함수라고 하지 않고 메소드라고 부른다. 

 

프로그래밍을 하다보면, 반복적으로 함수(Function)를 사용해야 하는 경우가 많다. 해당 함수가 필요할 때마다 class 내에서 선언해주고 사용하기에는 너무 비효율적이다.

 

그러므로 메소드를 통해 반복되는 코드, 내용, 재사용해야 할 코드들을 한 뭉치로 묶어서 따로 메소드로 만들은 다음(정의) 이를 필요할 때마다 사용(호출)한다.

 

 

 

Method 정의

메소드의 정의는 클래스 내에서 main 메소드 바깥에서 정의하여야 한다.메소드의 정의 구문은 다음과 같이 구성되어 있다.

수식어 리턴타입 메소드명 (매개변수, ...) {
	
    실행문
    
}
/*
modifier return_type method_name(parameter, ...) {

	body
    
}
*/

 

 

modifier(수식어)

메소드의 수식어라고도 하지만 제어자라고도 한다. 제어자는 클래스, 변수, 메서드의 선언부에 사용되어 부가적인 의미를 부여한다. 제어자는 접근 제어자와 그 외 제어자로 나뉜다.

 

접근 제어자로는 다음과 같이 존재하고, 단 하나의 접근 제어자만을 사용할 수 있다.

  • public
  • protected
  • default
  • private

 

그 외 제어자로는 다음이 있고 여러 개를 사용하여 메소드의 부가적인 의미를 추가할 수 있다.

  • static : static이 붙은 멤버변수와 메서드, 초기화 블럭은 인스턴스를 생성하지 않고도 사용할 수 있다
  • final :  final이 붙은 변수는 상수이므로 보통은 선언과 초기화를 동시에 하지만, 인스턴스변수의 경우 생성자에서 초기화 할 수 있다
  • abstract : 메서드의 선언부만 작성하고 실제 수행 내용은 구현하지 않은 추상메서드를 선언하는데 사용한다
  • 그 외 : native, transient, synchronized, volatile, strictfp

 

 

parameter

매개변수를 이해하기 위해서는 '매개'의 의미를 먼저 알아야 한다. 매개란, 연결해주는 어떤 것을 일컫는다. 흔히, 매개체라고 하면 서로 다른 물체 두개가 상호 작용을 하기 위한 물체인 것이다.

 

즉, '매개'변수란 사용자와 함수가 상호 작용하기 위해 연결해주는 변수인 것이다. 특정 메소드를 통해 사용자가 원하는 값을 얻기 위해서는 그 메소드가 필요한 값을 넘겨주어야 하는데 그 값을 매개변수라고 하는 것이다.

 

간단히 말하여서 메소드 호출 시 넘겨주는 값을 파라미터, 매개변수라고 한다.

 

 

return type

리턴 타입은 해당 메소드가 메소드 호출의 결과로 사용자에게 돌려주는 값이다. 리턴 타입은 변수로서 지정할 수 있는 모든 값을 리턴 타입으로 지정해 줄 수 있다.

  • void : 아무 값도 반환하지 않음
  • int
  • double
  • String
  • List<Integer>

이 외에도 여러 타입을 리턴할 수 있고, 해당 메소드의 리턴 값을 저장하기 위해서는 타입이 일치하는 변수에 저장해주어야 한다.

 

 

 

메소드 signature

메소드 이름 + 매겨변수 리스트로만 나타낸 것이다. (매개변수 타입, 순서, 개수)

addNumber(int, int)
sayHello(String)

 

728x90