메서드(method)는 다음과 같이 정의 할수 있다.
메서드는 선언부 + 구현부로 구성되어져있다.
형태는 다음과 같다.
반환타입 메서드이름(타입변수명 , 타입변수명, ...)
타입변수명(매개변수)은 없을수도 여러개일수도 있다.
///예시
int add(int a, int b){
int result = a + b;
return result; //결과값을 리턴 해줌.
}
////int->반환타입 add->메서드이름 int a,int b -> 타입변수명 이다.
매서드의 출력값은 0개 혹은 1개이다. 여러개의 값을 출력하고싶을때는 추후에 블로그에 업데이트 할 예정이다.
public class methodEx {
public static void main(String[] args) {
class addEx {
int add(int x, int y) {
int result = x + y;
return result;
}
int multyply(int x, int y){
int result = x * y;
return result;
}
}
}
}
위의 두 메서드영역에는 이름이 같은 매개변수가 존재한다. (x,y값)
이와같이 각각의 매서드 내에 선언된 메서드는 지역변수로 매서드영역 내에서만 동작하기 때문에 중복된 값이 같은 클래스에 있어도 매서드가 실행된 후 사라지기때문에 중복 적용이 가능하다.
메서드 호출 방법은 다음과 같다.
매서드이름(값1, 값2, 값3....);
//예시
class methodEx {
public static void main(String[] args) {
MyMath myMath = new MyMath();
int plusResult = myMath.add(10, 10);
int multiplyResult = myMath.multiply(10, 10);
int minusResult = myMath.minus(10, 10);
int divideResult = myMath.divide(10, 10);
System.out.println(plusResult);
System.out.println(minusResult);
System.out.println(multiplyResult);
System.out.println(divideResult);
}
}
class MyMath{
int add(int a, int b){
int result = a+b;
return result;
}
int multiply(int a, int b){
return a*b;
}
int minus(int a, int b){
return a-b;
}
int divide(int a, int b){
return a/b;
}
}
//결과값
// 20
// 0
// 100
// 1
//MyMath란 클래스 내부에 add,multiply,minus,divide라는 매서드를 생성 해주고
//psvm 내부에 MyMath클래스를 이용해서 myMath라는 객체(인스턴스)를 생성 해주었다.
//그리고 각각의 결과값 변수를 지정해주어
//int plusResult = myMath.add(10, 10); 다음과 같이 매서드를 호출해주었다.