Cute Running Puppy

Language/[Java] 혼자 공부하는 자바

[혼자공부하는자바] chapter 06-4. 메소드

R.silver 2021. 7. 19. 18:04
반응형

[혼자공부하는자바] chapter 06-4. 메소드

메소드 선언  = 선언부 + 실행 블록 

메소드 선언

리턴 값이 있다면 선언부에 명시하여야 한다. 

메소드 이름은 소문자로 작성하는 것이 좋다. 

매개변수가 필요하다면 작성한다. (없어도 된다.)

매개 변수의 개수를 모를 경우 매개 변수를 배열 타입으로 선언하면 된다. 

//매개 변수를 배열 타입으로 선언하는 방법 

int sum1(int[] values) { }

int[] values = {1, 2, 3};

 

배열의 항목 수는 호출할 때 결정된다. 

매개 변수를 배열 타입으로 선언하면 호출하기 전 배열을 생성해야 한다. 

배열을 생성하지 않고 값의 목록만 넘겨준다면 위와 같은 불편함을 줄일 수 있다. 

//배열을 생성하지 않고 값의 목록만 넘겨주는 방법

int sum2(int ... values) { }

int result = sum2(1, 2, 3);

 

...으로 선언된 매개 변수는 메소드 호출 시 위와 같이 쉼표로 나열해주면 된다. 

return 문

메소드의 리턴 값이 있다면 반드시 retrun 값을 지정해야 한다. 

//리턴 값을 지정하는 방법

return 리턴값;

 

return 문이 실행되면 메소드는 즉시 종료된다. 

 

리턴 값이 없는 메소드에서 return 문을 사용하면 메소드 실행이 강제 종료된다. 

만약 return 문 뒤에 실행문이 있을 경우 실행이 되지 않는다. 

뒤에 실행문이 더 있는 반복문을 종료시키고 싶으면 break를 사용한다. 

메소드 호출

객체 내부에서 호출
메소드 (매개값, ...);
객체 외부에서 호출

클래스로부터 객체를 생성해야 호출할 수 있다. 

객체를 생성한 뒤 토드(.) 연산자를 사용해서 메소드를 호출할 수 있다. 

클래스 참조변수 = new 클래스(매개값, ...);

참조변수.메소드( 매개값, ...);
타입 변수 = 참조변수.메소드( 매개값, ... );

메소드 오버로딩 

클래스 내의 같은 이름의 메소드를 여러 개 선언하는 것

반드시 매개 변수의 타입, 개수, 순서 중 하나가 달라야 한다. 

<메소드 오버로딩을 사용하는 이유>

매개값을 다양하게 받아 처리할 수 있도록 하기 위해 

반응형