01 메서드
■ 메서드 : 클래스 안에서 특정 기능을 수행하기 위해 코드들을 따로 하나의 블록으로 묶어 놓은 집합
-> 같은 코드의 반복적 사용을 피하고, 코드의 중복성을 제거하고, 코드의 재사용성을 높일 수 있다.
=> "모듈화"
가독성, 유지보수성이 좋아진다.
접근제한자 반환타입 메서드이름() {
// 기능을 수행할 코드
}
- 메서드는 또 다른 메서드에서 호출되어 사용됨
- 메서드는 클래스 안에서 선언되므로 메서드를 사용하기 위해서는 해당 클래스의 객체부터 생성해야 한다.
Book b = new Book();
b.read();
Book이라는 클래스에 선언된 read() 라는 메서드를 호출하려면 다음과 같이 작성
02 매개변수와 return
1) 매개변수 : 특정 기능을 수행하기 위한 메서드는 기능 수행 시 사용할 인수를 받을 수 있고, 그게 바로 매개변수
소괄호() 안에 인수(매개변수)를 받는다.
접근제한자 반환타입 메서드이름(자료형 변수명) {
// 기능을 수행할 코드
}
- 메서드를 호출할 때 같이 전달받는 변수를 메서드 안에서 사용할 지역변수에 담는 것
- 매개변수는 개수 제한이 없으므로 콤마(,)를 사용해서 나열
- 같은 자료형을 사용해야 할 필요도 없다.
2) return
: 메서드로부터 실행한 결과값을 되돌려 받을 때 '리턴 값' 사용
- 반환 타입 : 메서드를 호출했을 때 결과값으로 돌려받을 데이터의 자료형 명시
- 메서드가 반환할 값이 있다면 반드시 return 구문을 통해 결과값 반환해주어야 함.
접근제한자 반환타입 메서드이름() {
// 기능 수행할 코드
..
return 결과값;
}
- 매개변수와 마찬가지로 리턴값의 자료형은 제한이 없다. 자바에서 사용하는 모든 자료형을 반환형으로 사용 가능
- 실제로 던질 리턴값보다 작은 자료형으로 자동 형변환되어 반환하는 것도 가능!
기본 자료형 | 참조 자료형 |
정수형 : byte, short, int, long | 배열, 클래스 등 |
문자형(정수) : char | |
실수형 : float, double | |
논리형 : boolean |
- 결과값을 저장할 변수의 자료형은 결과값의 자료형과 동일하거나 자동 형 변환이 될 수 있는 자료형이어야 한다.
- 리턴값이 없는 메서드의 경우 반환타입으로 void를 사용한다. return으로 결과값을 반환해주지는 않지만 메서드를 종료하기 위해 반환값이 없는 return문을 사용할 수 있다.
+) return문은 결과값 반환과 동시에 메서드를 종료시키는 구문이므로, return문 뒤에 코드를 작성하면 컴파일 에러 발생
03 getter와 setter 메서드
■ 외부에서 객체의 필드에 맘대로 접근할 수 없도록 하기 위해서 사용
■ 메서드를 통해서 필드의 값을 불러오고, 값을 변경함. (필드 사용에는 메서드 필수)
■ 장점
1) 필드 보호
2) 메서드에서 필드에 들어갈 값 검증 후 대입 가능
3) 외부에서 사용할 필드의 값을 정제한 후 값 제공
① setter 메서드
: private로 선언되어 있는 필드에 접근하기 위해 사용. 객체 외부에서 필드의 값을 직접 넣지 못하도록 접근이 제한되어 있을 때 사용한다.
■ private : 같은 클래스 내에서만 사용 가능
② getter 메서드
■ private 필드를 객체 외부에서 값을 불러오기 위해 구현하는 메서드
'IT > JAVA' 카테고리의 다른 글
Java Section 09 : 생성자 (0) | 2025.01.16 |
---|---|
[JAVA] 객체배열 - 포켓몬 프로그램 (0) | 2025.01.16 |
[DAY 11] 캡슐화, 상속, 오버라이딩, Object 클래스 (0) | 2025.01.14 |
Java Section 07 : 클래스 (0) | 2025.01.14 |
[Day 10] 객체와 생성자 (0) | 2025.01.13 |