java class level access modifiers

By | 2021년 11월 20일
Table of Content

java class level access modifiers

동일 클래스

JAVA 에서는 객체 기준의 엑세스 제어가 아니라,
클래스 기준의 엑세스 제어를 한다.

따라서 동일 클래스간에는 private 변수에 접근이 가능하다.

    @Override
    public boolean equals(Object obj) {
        if (obj == this)
            return true;
        if (obj.getClass() != this.getClass()) {
            return false;
        }

        FavoriteFolder myEntity = (FavoriteFolder) obj;

        return myEntity.id == this.id
                && myEntity.name.equals(this.name)
                && myEntity.status.equals(this.status)
                && myEntity.hasCount == this.hasCount;
    }

동일 패키지, 하위 클래스

접근 제어를 지정하지 않으면,
동일 패키지에서도 접근이 가능하다.

private 을 지정하면 동일 클래스에서만 접근이 가능하다.

protected 로 지정하면, 동일 패키지와 하위 클래스에서도 접근이 가능하다.

ps

가능한거는 가능한거고…
위험한 기능이니 최소한의 경우에만 사용하자.

답글 남기기