📌 final 키워드
📌 instancsof 연산자
📌 package 키워드
✏️ final
은 "최종"이라는 의미를 가진다.
🤔 이런 의미를 가진 키워드를 "클래스", "변수", "메서드"에 사용했을 때 어떻게 될까?
📍 final 클래스는 상속할 수 없다. 따라서 하위 클래스를 만들 수 없다.
📍 fianl 변수는 초기화(값을 할당)이후에는 값을 변경할 수 없다. 따라서 선언시에 초기화 하지 않으면, 객체 생성시에 값을 초기화할 수 있고 그 이후에는 불가능하다.
📍 final 메서드는 오버라이딩을 금지하게 한다.
✏️ instansof
는 객체 참조 변수에 담긴 객체가 해당 클래스의 인스턴스인지 물어보는 연산자이다.
👉 하위 클래스는 상위 클래스의 인스턴스이기도하다.
✏️ 인터페이스에 대해서도 가능하다.
📍 객체 참조 변수의 타입이 아닌, 참조하고 있는 실제 객체의 타입에 대해서 처리한다.
✏️ package
키워드는 네임스페이스를 만들어주는 역할을 한다.
한 클래스의 실제이름은 패키지.클래스이다.
✏️ interface는 인터페이스 선언 키워드
✏️ implements는 인터페이스를 사용하는 키워드
👉 인터페이스 포스팅 보러가기
인터페이스는 내용이 더 넓기 때문에 해당 글을 다시 읽는 것이 좋을 것 같다.
✏️this
는 객체 자기 자신을 가리키는 키워드이다.
지역변수가 우선된다.
this.객체변수명
으로 사용한다.클래스명.정적변수명
으로 사용한다.✏️super
는 바로 위 상위 클래스의 인스턴스를 지칭하는 키워드이다.
⭐
클래스명.변수명
처럼 사용하는 것이 권장된다.
클래스 변수는 여기저기서 다 접근할 수 있기 때문에, 클래스명.변수명이 적절하다.
오예 내일부터는 SOLID에 대해서 알아보자 ~!