■ 메소드
- 메소드는 클래스를 구성하는 요소로, 특정 기능을 수행하는 단위 프로그램이다.
- 메소드는 해당 멧고드가 작업할 기능을 선언하고,
- 메소드를 사용하기 위해서 호출(Method Call)을 하며,
- 메소드의 사용이 종료되면 자신을 호출했던 쪽으로 제어의 흐름이 되돌아간다.
■ 메소드를 구성하는 원칙
- 두 번 이상 반복된느 코드는 메소드를 분리
- 메소드는 하나의 업무만 할 수 있도록 작성한다.
- 작업 단위는 가급적 잘게 쪼갠다.
- 메소드 명은 이름만으로 해당 메소드의 업무를 유추할 수 있도록 직관적으로 작성하는 것이 좋다.
■ 메소드의 작성
- 자바의 메소드는 아래와 같이 선언한다.
■ 메소드의 인수
- 메소드의 인수는 Parameter와 Argument로 나눌 수 있는데,
- Parameter(형식인수)는 메소드를 선언할 때 메소드 명의 괄호 안에 기입되는 지역변수를 말한다.
- Argument(실인수)는 정의된 메소드를 호출해서 사용하는 쪽에서 전달하는 값응 의미.
■ 메소드의 호출
■ 인수 전달 방식
- 자바에서 함수나 메서드에 매개 변수를 전달하는 방식에는 크게 두 가지가 있다.
① call by value
- 함수나 메서드에 매개 변수로 전달되는 값을 복사하여 전달하는 방식
- 메서드 내부에서 매개 변수의 값을 변경하더라도 메소드를 호출했던 원본 변수의 값은 병경되지 않는다.
② call by reference
- 메소드에 매개 변수로 전달되는 변수의 주소를 전달하는 방식
- 전달하고자 하는 값이 참조형일 때 메소드의 전달인자에서는 참조 값을 받기 위한 형태로 선언해야 한다.
- 원본의 값이 변경될 수 있다.
■ 메소드 오버로딩(Method Overloading)
- 메소드 오버로딩(method overloading)이란 한 클래스 내에 같은 이름의 메소드를 여러 개 정의하는 것을 말한다.
- 메소드 오버로딩을 사용하면 같은 기능을 하는 메소드를 하나의 이름으로 통합하여 사용할 수 있다.
■ 메소드 오버로딩의 조건
- 메소드의 이름이 동일해야 한다.
- 매개변수의 개수 또는 데이터 타입이 달라야 한다.
- 리턴 타입은 메소드 오버로딩과 상관 없다.
- 접근지정자는 동일하거나 더 넓은 범위여야 한다.
- 대표적인 예로 System.out.println()이 있다.
## 메소드 오버로딩
## 인수 전달 방식
## Sort를 메소드로 변경하기
## Score 클래스 생성
## ScoreTest(main) 생성
## Private Score 클래스 생성
## ScoreTest(main) 생성
## 문제
## 문제
'프로그래밍 언어 > Java' 카테고리의 다른 글
[Java] 가변인자 메소드 (0) | 2024.01.23 |
---|---|
[Java] 접근 지정자(Accessor) (0) | 2024.01.23 |
[Java] 객체 (0) | 2024.01.22 |
[Java] 배열의 복사 (Deep Copy vs Swallow Copy) (0) | 2024.01.22 |
[Java] 다차원 배열 (0) | 2024.01.19 |