본문으로 바로가기

[자바]접근제한자 & 추상화(클래스,메서드)

category Language/자바 2021. 1. 11. 17:09
728x90
반응형
SMALL

private

외부객체접근불가

default

같은 패키지에 있는 클래스만 접근 가능

protected

상속관계에 있거나 같은 패키지에 있는 클래스만 접근가능

public

모든 객체에서 접근 가능

static

메모리에 고정적으로 변수 또는 메소드를 생성(모든공간에서 공용으로 사용하는 값)

객체 생성없이 클래스명.변수 로 사용가능

super() this 같은 키워드는 사용불가

 

추상화

  • 클래스간의 공통점을 찾아내서 공통의 조상을 만드는 작업
  • 상속 계층도를 따라 올라갈수록 클래스의 추상화는 더욱 심화된다.

 

구체화

  • 상속을통해 자세한 메서드 구현

 

추상 메소드

  • 선언되어 있으나 구현되어 있지 않은 메소드
  • 추상메소드 선언

      abstract 키워드로 선언

      ex)public abstract int getValue();

  • 추상 메소드는 서브 클래스에서 오버라이딩하여 구현

 

추상 클래스

  • 추상 메소드를 하나라도 가진 클래스

      클래스 앞에 반드시  abstract라고 선언해야함

  • 객체를 생성할 수 없다
  • 추상클래스의 필요성

      상속관계에서 서브클래스가 반드시 구현해야 함을 알릴때(강제성)

      설계와 구현 분리

      슈퍼 클래스에서는 개념적 특징 정의,  서브 클래스에서 구체적 행위 구현

 

  

728x90
반응형
LIST