For Programmer
6-3 클래스 - 메소드 본문
728x90
메소드의 이름은 소문자로 시작하는 것이 관례이다.
[public/private/protected] [static/final/abstract/synchronized] 반환값유형 메소드이름([매개변수들]) {
// 메소드 기능
}
접근 제어 한정자(Access control modifiers)
- public
- public는 모든 클래스에서 접근 호출 가능하다.
- private
- private는 오직 클래스 내부에서만 접근 호출 가능하다.
- protected
- protected는 같은 패키지 또는 상속 받은 하위 클래스에서만 접근 호출이 가능하다.
- 접근 한정자 사용 안 함
- 접근 한정자를 사용하지 않고 선언된 메소드는는 같은 패키지 내의 클래스에서만 접근 호출이 가능하다.
static 메소드
메소드에 static이 선언 되면 클래스 메소드를 의미한다. 프로그램이 시작되는 동안 한번만 메모리에 할당이 되기에 전역(Global) 메소드로서 사용된다. 사용은 따로 객체를 생성하지 않고 클래스에서 바로 메소드를 호출하여 사용한다.
https://honbabzone.com/java/java-static/ (static에 대한 자세한 정리글(JVM개념까지 적용)
final 메소드
final이 붙은 메소드는 상속이 되지 않는 메소드이다. 현재의 클래스를 다른 하위 클래스에서 상속받지 못하도록 하는 것을 뜻한다. 이는 정보의 보호 측면에서 유용하다.
메서드를 final로 선언하면 상속받은 클래스에서 오버라이드가 불가능하게 된다. 언제 사용하면 좋을까요? 구현한 코드의 변경을 원하지 않을 때 사용 side-effect가 있으면 안 되는 자바 코어 라이브러리에서 final로 선언된 부분을 많이 찾을 수 있다.
abstract 메소드
abstract가 붙은 메소드는 추상 메소드라고 한다. 상위 클래스에서 선언 부분만 있고 구현 부분이 없는 메소드를 미리 지정할때 사용한다. 이 추상 메소드가 하나라도 존대하면 이는 추상 클래스가 되어야 한다.
sychronized
스레드의 동기화를 위한 메소드
반환값 유형(Return data-type)
메소드가 수행 후 반환될 값을 유형을 의미한다.
매개 변수(Parameter variable)
매개 변수는 메소드에 전달되는 값을 전달하는 변수이다.
지역 변수(Local variable)
- 지역 변수는 메소드 안에서 선언된 변수이다. 해당 메서드에서만 사용 가능.
- 메소드 실행시 메모리에 생성되어 메서드 종료시 자동 삭제.
- 메소드 내 어디서든 호출 가능. 단, 선언한 다음 사용함.
메소드 오버로딩(Overloading)
- 메소드의 이름이 동일하지만 매개변수가 다른경우 이름이 매게변수를 달리하여 동일한 메소드를 생성하는 것을 말한다.
728x90
'Programming language > Java' 카테고리의 다른 글
6-2 클래스 - 생성자 (0) | 2021.08.13 |
---|---|
6-1. 클래스 - 멤버 변수 (0) | 2021.08.13 |
6. 클래스 (0) | 2021.08.13 |
5. 제어문(가정문,반복문) (0) | 2021.08.12 |
4. 배열 (0) | 2021.08.11 |
Comments