05.26.2023 - 학습 일지
1. AM 09:00 ~ PM 18:00분 : BE(백엔드 KDT)
- [AM 09:00 - 11:50, PM 13:00 - 18:00]
[특강] Java 실습 및 개념 익히기
- Abstract, Interface, Collection, Generic, Exception, Try-Catch, Thows
✔ [학습 내용]
✔ 추상클래스
- 추상클래스의 정의와 특징과 추상 클래스의 목적과 활용[개념]
- 추상 메서드와 일반 메서드의 차이점[개념]
- 추상 클래스를 상속하는 방법, 추상 클래스의 상속 관계 예시[실습]
✔ 인터페이스
- 인터페이스의 정의와 특징과 인터페이스의 목적과 장점[개념]
- 다중 상속과 인터페이스의 관계 설명[개념]
- 인터페이스를 구현하는 방법과 구현 예시코드[실습]
- 추상 클래스와 인터페이스의 공통점과 차이점[개념]
✔ 컬렉션
- 컬렉션의 개념과 배열의 차이점[개념]
- 컬렉션 구현[실습]
✔ 제네릭
- 제네릭의 개념과 장점[개념]
- 제네릭 타입 활용 방법과 메서드 활용방법[실습]
✔ 예외처리
- 에러와 예외의 개념설명[개념]
- 예외 클래스의 구조와 Checked Exception과 Unchecked Exception 차이점[개념]
- try-catch 블록을 사용한 예외 처리 및 throws를 사용한 예외처리[개념 + 실습]
[특강] Java 실습 및 개념 익히기 - Abstract, Interface, Collection, Generic, Exception, Try-Catch, Thows (실습)
[특강] Java 실습 및 개념 익히기 - Abstract, Interface, Collection, Generic, Exception, Try-Catch, Thows (실습후기)
- 추상클래스의 개념과 특징, 어떻게 활용하는지, 추상메서드와 일반메서드의 차이점은 무엇인지를 학습하고 상속관계에 대해서도 이해하기 위해서 실습을 하였는데, 이론보다는 실습을 통해서 조금 더 이해하기가 쉬웠고, 구분하는 법도 깨우치게 되었으며, 인터페이스에서는 동일하게 개념과 특징, 장점과 다중 상속과 인터페이스의 관계에 대해서 이론적으로 배우고, 구현하는 방법을 실습하면서 추상메서드를 활용하여 다중상속하는 것 까지 시도해보고 클래스와 인터페이스의 상속차이점에 대해서도 클래스는 단일 상속만 가능하지만, 인터페이스는 다중 상속이 가능하다는 것을 알게되었고, 구현 키워드는 "implements"이고 추상 클래스의 구현 키워드는 "extends"이고, IS-A관계[클래스가 추상클래스를 상속 받을 때의 관계]와 Has-A관계[인터페이스를 구현할 때의 관계]를 이론과 실습을 통해 더 와닿았고, 컬렉션, 제네릭, 예외처리를 배우면서 컬렉션 인터페이스의 종류에 대해서 학습하면서 어떤 역할을 하고 어떻게 사용되는지를 실습을 통해 알게되었고, 제네릭은 간단하게 장점과 타입을 활용하면서 어떤 의미인지를 간단하게 지나갔고, 예외처리 부분에서 3가지 분류로 첫 번째, try-catch문을 이용하여 예외가 발생할 수 있는 코드를 try문에 작성하고 catch문에는 try 블록에서 발생한 예외를 처리해주며, 두번째는 throws를 사용하여 예외처리인데, 메서드 선언부에 throws 키워드를 사용하여 메서드에서 발생할 수 있는 예외를 명시하여 예외를 처리합니다. 세번째는 사용자 정의 예외처리인데, 직접 Exception 클래스를 상속받아 예외 클래스를 만들어 생성자를 사용하여 예외 메시지를 설정해주는 방법이 있다는 것을 알게되었고, 나중에 DB Connection을 할때 어떤의미에서 예외처리를 해줘야하는지를 그리고 그외에도 try-catch문을 사용해야 할 시점에도 어떻게 처리하면 좋을지도 이해하면서 로직을 구현할 수 있을 것 같아서 좋았다. 물론 한번에 이해가 되지는 않지만 계속해서 이렇게 정리를 하면서 한번 더 상기시키고 의미없이 코드를 구현하지 않고 최소한의 개념과 의미를 알고 코드를 작성해 나갈 것이다.
마무리
- 물론 모든 부분이 쉽지 않지만, 계속해서 문을 두드려도 보고 계속해서 질문도 해보고 스스로 구글링을 통해서 내 방식대로 머릿속에 이해를 시켜볼려하고, 코드를 반복적으로 작성하면서 몸으로도 익히고 그리고 구현할때에도 왜 이렇게 구현해야하는지도 자꾸 시도하고 알아가면서 채워나가다 보니 점점 이해하는 속도도 붙는 것 같고 재밌어져서 좋다. 이번은 학습을 통해서 의미있는 코드를 작성하는 것과 복사 붙여넣기를 하더라도 어떤 의미인지 왜 이코드는 이렇게 짜져있고 구현이되는지를 한 단계 한 단계씩 업그레이드 되는 자신이 너무 기쁘다. 그만큼 시간이 많지 않지만 급하게 빠르게 달리기 보다 기본은 탄탄하게 다져가면서 속도를 붙이자는 생각을 하게되었다. 코딩할때면 매번 즐겁고 물론 힘들때도 종종 있지만 잘 이겨내도록 때론 잘 안될때에는 CS공부를 하거나 IT유튜브 영상을 시청하면서 어떤 기술이 나왔나, 어떤 흐름으로 변화가 일어나고 IT 분위기는 어떠한가 등등을 통해서 다시 마음을 다잡고 계속해서 진전중에 있다. 꼭 원하는 개발자가 되어서 계속해서 블로그를 작성하면서 지금은 예비개발자이지만 개발자라는 호칭을 사용하면서 즐겁게 블로그를 작성하는 생각을 하며 마무리 지어본다. :) 즐겁다! XD
'개발자 취업 프로젝트[일지]' 카테고리의 다른 글
💻개발자가 되기 위한 프로젝트(82)💻 (0) | 2023.05.31 |
---|---|
💻개발자가 되기 위한 프로젝트(81)💻 (0) | 2023.05.31 |
💻개발자가 되기 위한 프로젝트(79)💻 (0) | 2023.05.26 |
💻개발자가 되기 위한 프로젝트(78)💻 (0) | 2023.05.25 |
💻개발자가 되기 위한 프로젝트(77)💻 (0) | 2023.05.24 |