
제어자는 클래스, 변수, 메서드의 선언부에 사용되어 부가적인 의미를 부여한다.
public: 접근 제한이 전혀 없다.protected: 같은 패키지 내에서, 다른 패키지의 자손 클래스에서 접근이 가능하다default: 같은 패키지 내에서만 접근이 가능하다.private: 같은 클래스 내에서만 접근이 가능하다.만약 지정되어 있지 않다면
default이다
static, final, abstract클래스: public, default
메서드 & 멤버변수: public, protected, default, private
지역변수: 없다
일반적으로 생성자의 접근 제어자는 클래스의 접근 제어자와 일치 !
클래스 내부에 선언된 데이터를 보호하기 위해서 사용
유효한 값을 유지, 함부로 변경하지 못하도록 접근을 제한
public, default, final, abstractpublic, protected, default, private, final, abstract, staticpublic, protected, default, private, final, staticfinal🚨 주 의 🚨
- 메서드에
static과abstract를 함께 사용할 수 없다.- 클래스에
abstract와final을 동시에 사용할 수 없다.abstract메서드의 접근 제어자가private일 수 없다.- 메서드에
private와final을 같이 사용할 필요는 없다.