메서드란?
클래스의 기능에 해당하는 영역
- 특정 기능을 묶어 하나의 메서드로 정의
- 타 프로그래밍 언어의 함수와 비슷
- 메서드에 어떤 값을 넣고, 연산 및 처리를 한 후 결과값을 반환
메서드의 구조
접근제한자 리턴타입 메서드명 (매개변수...) { ----> 메서드 선언 영역
실행문
... ----> 메서드 영역
return 값;
}
1. 매개변수
- 매개역할을 하는 변수
- 실행되는 곳에서 변수를 통해 메서드 안쪽으로 '변수값'을 전달해주는 것
2. 리턴값
3. 리턴타입
- 어떠한 자료형으로 반환할 지를 결정
- 리턴값이 없으면 void로 작성
메서드 실행(호출) 방법
- 메서드 실행(호출)
- 클래스 내부 : 메서드명();
- 클래스 외부 : 객체명.메서드명();
- 클래스메서드 사용 방법 : 클래스명.메서드명();
- 인스턴스메서드 사용 방법 : 객체명.메서드명();
메서드 실행 순서
- 스택 개념 적용
- 가장 먼저 실행된 메서드는 가장 나중에 종료
메서드 오버로딩
- 매개변수의 자료형, 개수, 순서 중 하나 이상이 다르면서 메서드명이 같은 메서드 생성 맟 사용이 가능하다.
int add(int x, int y) {
return x + y;
}
double add(int x, double y) {
return x + y;
}
double add(double x, int y) {
return x + y;
}
double add(double x, double y) {
return x + y;
}
- 위 4개의 메서드는 모두 메서드명이 "add"이지만 매개변수의 자료형이 다르므로 생성할 수 있다.