티스토리 뷰
#. 메서드 정의하기
> 메서드(Method) 정의
- 구문 :
1 2 3 | [access modifier] 반환형(return_type) 메서드명(arg1, arg2, ...) { // 메서드 실행 코드 } | cs |
ㄴ 접근 제한자 (Access Modifier) : 접근 제한 시 사용되는 키워드, 생략 가능
ㄴ 반환형 (Return_type) : 반환형은 메서드가 수행되고 수행 결과로 리턴되는 데이터 타입
기본형이나 참조형 모두 올 수 있고, 아무 값도 리턴하지 않는 경우 void
ㄴ 메서드명 : 메서드명은 식별자(identifier) 규칙에 따라 명시
ㄴ 매개변수 (Parameter) : 메소드 수행 시 전달되는 인자의 타입과 변수명으로 존재
각 인자는 쉼표로 구분, 메소드가 인자를 갖지 않으면 '()' 비워둠
- 사용:
1 2 3 4 5 6 7 8 9 | public int sum(int num1, int num2) { int sum = 0; sum = num1 + num2; return sum; } public int simpleSum(int num1, int num2) { return num1 + num2; } | cs |
v. 메서드 앞에 접근 제한자를 붙일 수 있음
v. 메서드의 수행 결과를 리턴하라 수 있도록 반환형으로 선언 -> 반환 값이 없다면 void
v. 메서드명 뒤에 괄호를 이용해서 메서드 수행에 필요한 값들을 받아들일 수 있도록 매개변수 선언
> 메서드 정의2
- 메서드 선언부는 "반환형", "메서드명", "매개변수" 로 이루어져 있음
- 메서드 선언
1 2 | public int sum(int num1, int num2) { } | cs |
ㄴ '( )' 영역은 매개변수 영역
ㄴ '( )' 안에 선언된 변수들이 매개변수
- 메서드 호출
1 | sum(3, 8) | cs |
ㄴ 메서드 '( )' 안에 넘어가는 데이터는 Argument, 또는 인자
> 메서드 Modifier
- 접근 권한 예약어
ㄴ public : 모든 클래스에서 접근이 가능한 클래스
ㄴ protected : 동일 패키지에 속하는 클래스와 하위 클래스 관계의 클래스에 의해 접근 가능
ㄴ private : 클래스 내에서만 접근 가능
ㄴ (default)
- 활용 방법 예약어
ㄴ final : Overriding이 불가능한 메서드를 정의
ㄴ static : 클래스에 소속된 클래스 메서드를 의미, 클래스 생성 시 만들어짐
ㄴ abstract : 추상 메서드를 의미, 하위 클래스에 의해 구현
ㄴ synchronized : Thread의 동기화를 위한 메서드
'Web > JAVA' 카테고리의 다른 글
[JAVA] 메서드 Overloading (0) | 2019.07.26 |
---|---|
[JAVA] 이클립스 메서드 자동 구현 (Getter/Setter, toString) (0) | 2019.07.25 |
[JAVA] 접근 제한자 (0) | 2019.07.25 |
[JAVA] 클래스 선언, 구성요소 (생성자, 멤버변수, 메서드) (0) | 2019.07.25 |
[JAVA] 멤버 변수 선언 (전역변수, 지역변수) (0) | 2019.07.25 |