반응형
메서드 (Method)
메서드는 필드와 함께 클래스의 구성 요소 중 하나이다. 메서드는 특정 작업을 수행하는 일련의 명령문들의 집합이다. 즉, 클래스의 기능에 해당하는 내용을 담당한다.
메서드는 머리에 해당하는 메서드 시그니처(method signature)와 몸통에 해당하는 메서드 바디(method body)로 구분한다.
public int multiply(int a, int b) { // 메서드 시그니처
// 메서드 바디
int result = a * b;
return result;
}
메서드는 반환타입이 void(없음)가 아닌 경우 반드시 return 문이 존재해야 한다. 또한, 리턴 타입은 반환타입과 일치하거나 자동 형변환이 가능한 형태여야 한다.
class MethodType {
// void인 경우 return 없음.
void printName() {
System.out.println("Hong Gildong");
}
// int인 경우 return이 존재해야 함.
// return 타입은 반환 타입인 int와 동일해야함.
int printNumber() {
return 10;
}
// 자동 형변환이 가능한 형태
double multiply(int a, double b) {
// 메서드 바디
double result = a * b;
return result;
}
}
double 타입은 int보다 더 큰 범위를 가지므로 자동으로 형변환이 이루어진다.
메서드 호출
메서드를 정의하더라도 호출을 하지 않으면 메서드를 실행할 수 없다. 메서드도 클래스의 멤버이므로 클래스 외부에서 메서드를 사용하기 위해서는 인스턴스를 생성한 후 사용할 수 있다. 하지만, 클래스 내부에서는 객체를 생성하지 않고 호출할 수 있다.
메서드의 호출 방법은 포인트 연산자(.)를 사용하여 호출한다.
class MethodTypeTest {
public static void main(String[] args) {
MethodType test = new MethodType();
test.printName();
test.printNumber();
test.multiply(2, 4.5);
}
}
반응형
'언어(Language) > Java' 카테고리의 다른 글
[Java] 자바 생성자(Constructor) 개념 정리 및 예제 (0) | 2022.09.14 |
---|---|
[Java] 자바 메서드 오버로딩과 오버라이딩 (Overloading vs Overriding) (0) | 2022.09.14 |
[Java] 자바 필드(Field) 개념 정리 및 예제 (0) | 2022.09.13 |
[Java] 자바 클래스와 객체, 인스턴스 개념 정리 및 활용 (0) | 2022.09.13 |
[Java] 자바 배열(Array) 개념 정리 및 사용법 (0) | 2022.09.13 |