자바(Java)

자바 (Java) 객체지향언어 메서드?

JAVABOZA 2023. 4. 24. 16:35

자바에서의 메서드(method)

👉특정 작업을 수행하는 일련의 문장들을 하나로 묶은 것

 

메서드는 크게 선언부(header), 구현부(body)

 

반환타입 메서드이름 (타입변수명, 타입변수명···)         // --> 선언부
{                                                    // --> 구현부
  //매서드 호출시 수행되는 코드                        
}


int add(int a, int b)                                     // --> 선언부
{                                                         // --> 구현부
	int result = a + b;
    return result;     // 호출한 메서드로 결과를 반환한다. 
}

 

 

메서드의 header 선언부는 메서드의 이름과 매개변수의 선언, 반환타입으로 구성

 

                 int add(int x, int y)

int = 반환타입

add = 메서드이름

(int x, int y) = 매개변수 선언(입력)

 

※매개변수를 선언할때 변수의 타입을 생략하면 안됨

 ex) int add(int x, int y)  ---> ⭕

      int add(int x,  y)  ---> error❌

 

 

반환타입

💬반환타입은 메서드의 작업수행 결과인 반환값의 타입을 말한다.

     여기서 반환값이 없으면 'void' 를 반환타입으로 적어야한다.

 

 

 

return문

메서드의 반환타입이 void 가 아닌 경우 구현부({}) 안에 'return반환값' 을 반드시 포함시켜야 한다.

이때 반환타입과 일치하거나 최소한 자동 형변환이 가능한것이여야 한다.

 

int add(int x, int y)
{
	int result = x + y;
    return result;
}

이처럼 구현부의 result와 선언부의 int가 반환타입이 같아야 한다.

 

 

메서드내에서 선언된 변수들은 그 메서드 내에서만 사용 가능

그래서 다른 메서드라면 같은 이름의 변수를 사용해도 무관하다.

 

메서드 내에서 선언된 변수를 '지역변수(local variable) == lv '라 부른다.

 

 

메서드를 호출할때는 

메서드이름 (값1, 값2, ····);   // 해당방식으로 호출

 

ex) print99danAll()   // void print99danAll를 호출

      int result = add (3,5) // int add (int x , int y)를 호출하고 결과를 result에 저장