210201_JAVA_object, final, @Override

정재현·2021년 2월 1일
0

TIL

목록 보기
62/80

2월이 왔다!
벌써 1월이 갔다니.. 시간 빠르다.. 좀더 허슬할 한달이 되자.
어제 상속챕터를 끝내고 오늘부터 새로운 챕터에 들어간다.

흠.. 그런데 생각해보니 중간에 리뷰를 할 시간이 없었다.
복기는 너무 중요하다.
복기라는 단어는 바둑을 다 두고 나서 승패가 나뉜 뒤, 다시 처음부터 똑같이 둬보면서 잘한점과 잘못한점을
살펴보는 것이다.
이렇게 실력이 늘어간다.

내 얼마되지 않은 습관인데, 삶을 복기해보는 습관을 가졌고 가지려고 노력했다.
보통 나는 연말에 한번. 중순에 한번. 그리고 삶이 해이해졌다고 느낄 때 종종하는 편이다.
내가 지금 있는 곳이 어디고 어디로 향해야 하는지 잘 알지는 못하지만 그냥 한다.
그렇게 하다보면 차츰 알게된다. 물론 지금도 잘 알지는 못한다.
말이 좀 샜는데, 어쨋든 조만간 여태까지 배운 것들을 복기하는 시간을 가져야겠다.


아무튼 오늘 할 것을 해보자면~
Object 클래스, final 선언, @Override이다.
내용은 다들 간단한 개념 정도였다.

모든 클래스는 Object 클래스를 상속한다는 내용이였고, extends Object가 생략되어있다는 내용.
결국 모든 자바 클래스는 직간접적으로 Object 클래스를 상속하고 있다는 것이다.
그 이유는 자바의 모든 인스턴스에 공통된 기준 및 규약을 적용시키기 위함이다.

클래스와 메소드의 final선언은
해당 클래스나 메소드가 다른 클래스를 상속하는 것을 원치 않으면 붙인다.

public final class MyLastCLS {...}
 -> MyLastCLS 클래스는 다른 클래스가 상속할 수 없음.

@Override
업무하면서 자주 본 어노테이션이다.
한마디로 정의하자면, 컴파일 과정에서 개발자의 의도대로 되지 않고 컴파일이 되는 것을 막아주는 장치이다.
많이 써왔고, 특별히 어렵지 않은 개념이기에 나도 넘어가겠다.
만약 오버라이딩을 사용할 때 메소드의 형과 반환형이 다른 부분이 있다면 넣어주는 것이 좋다.

오늘은 이렇게 간단하게 개념만 훑었다.
내일은 새로운 17챕터를 진행하고, 그 이름은 인터페이스와 추상 클래스 이다.

오늘의 코멘트: 21년 2월도 화이팅~~! 허슬허슬!

profile
"돈받고 일하면 프로다"

0개의 댓글