케네스로그

[Java] 메소드, 접근제어자 본문

Dev/Java

[Java] 메소드, 접근제어자

kenasdev 2022. 2. 8. 19:10
반응형

메소드의 정의

access_modifier return_type method_name (parameter...) {
	// implementation
}

public void demoMethod (int a) {
	// this is example method
}

 

메서드의 구성

  • 접근 제어자(access modifier)
  • 리턴타입(return type)
  • 메소드 이름
  • 파라미터

 

접근제어자

public o o o o
protected o o o  
default o o    
private o      
  • private: 해당 클래스에서만 접근이 가능
  • default: 패키지 내부에서만 접근가능
  • protected: 동일 패키지의 클래스 또는 해당 클래스를 상속받은 다른 패키지의 클래스에서만 접근 가능
  • public: 어떤 클래스에서라도 접근이 가능

단, class와 interface는 public, default 두가지의 접근제어자만 사용할 수 있다.

 

 

static

static 키워드는 변수 또는 메소드 앞에 사용되는 키워드로써, 해당 변수/메소드가 해당 클래스에 속하게 되며, 인스턴스화를 하지 않더라도 접근하여 사용할 수 있다.

 

 

final

  • 클래스: 해당 클래스를 상속 받을 수 없다.
  • 변수: 상수화하여 최초 값 할당 후엔 수정할 수 없게 된다.
  • 메소드: 오버라이딩 될 수 없다.

 

abstract

  • 클래스: 추상 클래스가 되어 직접 객체 생성이 불가능하고, 상속을 통해 자식 클래스를 통해 객체 생성이 가능
  • 메소드: abstract 클래스 내부에서만 absract 메소드를 위해 사용된다. 구현부는 상속받은 자식 클래스 내 메소드를 통해 구현할 수 있다.
반응형

'Dev > Java' 카테고리의 다른 글

[Java] 상속, super()  (1) 2022.02.15
[Java] 객체의 생성, 인스턴스화, 생성자, this 키워드  (0) 2022.02.09
[Java] 클래스  (0) 2022.02.08
[Java] 관계 연산자, 균등 연산자  (0) 2022.02.05
[Java] 쉬프트 연산자 <<, <<<  (0) 2022.02.05